两种解决方案:
1.使用原始的fori循环
for (let index = 0; index < data.length; index++) {
const item = data[i]
item.eldata = await axios.get(api.get_data, {
id: i
})
}
2.使用Promise.all()
data = Promise.all(data.map(async (item, index) => {
return {
...item,
eledata: await axios.get(api.get_data, {
id: index
})
}
}))
原理应该是foreach内部封装了while,循环并行执行,而且并行执行数组的所有callback函数,不会等待里面的callback的返回。