Feb 17, 2020 06:01 AM
This script block code seems to crash the Block… any ideas?
output.text('# IndexOf() Bug?');
let str = "This is a test ...";
let positionOfIs = str.indexOf("is");
output.text(positionOfIs);
Feb 17, 2020 07:48 AM
Good catch, thanks! We’ll get it fixed.
It looks like output.text
is choking because positionOfIs
is a number, but it expects a string. It works if you cast to a string:
output.text(`${positionOfIs}`);
Feb 17, 2020 08:37 AM
Hmm, I’ve see cases where indexOf() is causing scripts to crash when output.text() is not being used. Perhaps I was not being specific enough about the data type in other places maybe?
Feb 17, 2020 11:37 AM
Oh interesting. The block should never crash even if the script has bugs (i.e. it should just show an error message in the output section), so if you find other examples please keep posting here so we can get it fixed :slightly_smiling_face:
Feb 18, 2020 09:15 AM
Quick question - should fetch() work in Script Blocks? If so, simple GET or POST example kicking around?
Feb 18, 2020 10:21 AM
fetch()
should work (although there’s a bug where the editor will complain, see Script Block - fetch bug?)
Here’s an example of a GET:
const response = await fetch('https://dog.ceo/api/breeds/list/all');
const json = await response.json();
output.inspect(json);
Feb 18, 2020 10:24 AM
@Shrey_Banga also posted a longer example with an API call to the OMDB