我正在尝试在 NextJS 应用程序的构建过程中解决一系列承诺,因为我在使用 Promise.all 时遇到网络错误,但由于某种原因,我无法解决这些承诺。
此代码有效,但不适用于我的构建:
const activityPlacesPromises = activityLocationIDs.map((id) =>
this.get(`places/${id}`)
);
const activityPlaces = await Promise.all(activityPlacesPromises);
console.log(activityPlaces); // Returns the data correctly
此代码不起作用:
const activityPlaces = activityLocationIDs.reduce((promise, id) => {
return promise.then(() => this.get(`places/${id}`));
}, Promise.resolve());
console.log(activityPlaces); // Returns Promise { <pending> }
为什么 Promise.resolve() reduce 函数不起作用?
PS:我要离开这个SO问题:一个接一个地解决承诺(即按顺序)?