I'm using the Advice Slip API. As the title says, when I input the JSON data into the variable, like this:
let advi;
fetch("https://api.adviceslip.com/advice").then(r => r.json()).then(adv => advi = adv);
It gives me the error that I mentioned. However, when I replace
.then(adv => advi = adv)
with
.then(console.log)
it gives me an object with the advice. However, since I don't want to just console.log the advice as I need to use it in my website, I need to find a way to use it in a variable.
CodePudding user response:
If you are trying to iterate advi
just below call fetch
api, yes the advi
variable is still undefined, because fetch is Web API which is asynchronous.
CodePudding user response:
index.js
function showData() {
let advi;
fetch("https://api.adviceslip.com/advice").then(r => r.json()).then(adv => {
advi = adv;
console.log(advi);
})
}
showData();