【发布时间】:2016-05-20 04:30:28
【问题描述】:
我希望在 forEach() 循环期间做出的最后一个承诺返回时调用一个函数。
示例代码:
var mainList = getArrayData()
mainList.forEach((item,i)=>{
mongooseSchema.find(_id:item.id).exec((err,doc)=>{
doStuff(doc)
})
})
第二个块之后的任何代码都将在所有 mongo 查询被发送后立即运行。如果您将整个内容包装在一个 Promise 中(即数组数据来自单独的 mongo 查询),您仍然可以获得相同的效果。
有什么方法可以为最后一个查询设置一个特殊的函数/回调,或者更好的是,在所有查询都返回后返回一个 promise?
谢谢
【问题讨论】:
标签: node.js mongodb mongoose promise