我试图用这段代码来做一堆axio get调用:
console.log("getting here")
const promises = Data?.stuff.map(async(id: any) => {
axios.get('http://127.0.0.1:8080/api/v1/stuff/' + id)
.then(response => {
console.log(response.data)
return response.data;
});
const tempLesson: any = await Promise.all(promises);
console.log("never getting here")
字符串
但是它直到结束才执行。有什么问题吗?
2条答案
按热度按时间sg3maiej1#
Promise.all(promises)应该在.map()函数之外等待。Promise.all()所做的是接受一个promises数组(在本例中是一个Axios请求数组),并且仅当数组中的所有promises都已解决,或者有一个已拒绝时才进行解决。
所以,如果你想这样做:
字符串
就这些了
zbq4xfa02#
您的代码缺少return语句和右括号
您以前的代码不应编译。我不知道第一个
console.log
是怎么运行的。字符串