问题描述
let reccData = []
for (const uniformId of uniformCollectionIds) {
let watchCreatives = await CreativeCollection.findById(uniformId);
if(watchCreatives.isActive){
let recommendations = await ReccService.fetchReccSeries(watchCreatives.reccNo);
if(recommendations){
reccData.push({reccNo:recommendations.reccNo,watchList:recommendations.watchListId,...})
}
}
}
Logistics.insertMany(reccData).then(() => {
//My other business logic goes here
});
ReccService.ts
public fetchReccSeries = async (reccNo:number) => {
let getRecc = await Recc.findByNumber(reccNo)
if(getRecc){
return getRecc
}
};
以上代码的问题是,甚至在我从await ReccService.fetchReccSeries
得到响应之前,for..of
都移到了下一个迭代。上面只是一个代码片段,我希望它以顺序方式执行的原因是,很多计数器/增量逻辑都基于此。
我尝试过的事情
一个.then({})
的诺言确认,但是行为仍然相同。
将await
设置为for..of
for await (const uniformId of uniformCollectionIds) {
尝试Promise.All
超出了我的范围
我期望的是:
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)