我需要对API发出几个异步http请求,以获取一些数据。在这样的函数中循环设置非常简单:
async function fetchData() {
let data = {}
for (const asset of someAssets) {
try {
data[asset.id] = await library.fetchSomeData(asset.id)
} catch (err) {
console.error(err)
}
}
return data
}
let data = fetchData()
console.log(data)
这里的问题是最后一个console.log(data)
作为未处理的Promise而不是数据返回。如何解决此问题?我是否还需要将我的“主要”代码(在底部)包装在async
函数中?在什么时候我的整个项目只需要包裹一个async
函数?