Javascript axios请求的问题
我无法让axios请求正常工作。我正在遵循我的一门课程中展示的模式。有趣的是,我可以console.log数据,但不能返回数据并将其保存到变量中。任何帮助都将不胜感激。 祝你今天愉快Javascript axios请求的问题,javascript,asynchronous,request,Javascript,Asynchronous,Request,我无法让axios请求正常工作。我正在遵循我的一门课程中展示的模式。有趣的是,我可以console.log数据,但不能返回数据并将其保存到变量中。任何帮助都将不胜感激。 祝你今天愉快 const get = async () => { const res = await axios.get( "https://www.themealdb.com/api/json/v1/1/list.php?i=list" ); return res; }; asy
const get = async () => {
const res = await axios.get(
"https://www.themealdb.com/api/json/v1/1/list.php?i=list"
);
return res;
};
async
表示函数返回承诺。这是一个基本事实
const get = async () => {
const res = await axios.get(
"https://www.themealdb.com/api/json/v1/1/list.php?i=list"
);
return res;
};
get().then(result => {
console.log(result);
})
请阅读:
但是,在这种情况下,您不需要async
,因为axios
已经返回了一个承诺
const get = () => axios.get("https://www.themealdb.com/api/json/v1/1/list.php?i=list")
您应该返回res.data
import axios from 'axios';
const get = async () => {
const res = await axios.get(
"https://www.themealdb.com/api/json/v1/1/list.php?i=list"
);
return res.data;
};
const print = async()=>{
const resp = await get();
console.log(resp);
}
print();
return
res.data
而不是res
我已经尝试过了:/I仍然得到了挂起的承诺。您如何调用get
,我的意思是这样get()
或者这样wait get()
我在函数名之前没有异步调用它。1。您应该像上面提到的Piyush一样返回res.data
。2.我认为您可能需要检查cors策略,这可能是您的响应被阻止的原因我没有定义。。。我不知道如何解决这个问题。@nietopowyinformatyk您可以将您的尝试添加到您的帖子``const get=()=>{axios.get(“)。然后((res)=>console.log(res));}“``而且它工作得很好。但是当我尝试存储数据时,事情会变得很疯狂。@nietopowyinformatyk我想你没有完全理解承诺和箭头函数?在箭头函数中你使用括号{}
在我的例子中我没有。我没有忘记它们。如果你写一个没有括号的箭头函数,箭头右边的表达式将自动返回。但是如果你写一个括号,它将不会自动返回,这意味着你的函数不返回任何内容。不返回任何内容意味着未定义我不能让它工作…但我真的很想理解这一点。我想我将参加一些临时讲座。我将重述这个主题。