0
我需要幫助瞭解如何在.map方法中調用異步方法。我需要等到所有的異步方法完成,然後使用修改後的異步方法的值。Promise.map內的異步方法
我的代碼如下
//declared during init
var Promise = require("bluebird");
Promise.map(objectArray, function (item) {
mongoDB.findOne({
itemId=item.id
})
.then(function (result) {
item.set({newValue:result.foo});
return item.toObject();
})
.catch(function (err) {
});
}).then(function (modifiedObjectArray) {
return res.status(200).send(modifiedObjectArray);
});
在上述情況下,地圖的那麼函數只要迭代完成其任務調用。我如何等待所有數據庫任務完成。
:)奏效。我對「承諾」這個概念完全陌生。從來不知道地圖內可以有兩個回報 –
'不知道地圖內可以有兩個回報 - 沒有 –