【发布时间】:2012-09-10 10:21:35
【问题描述】:
首先,上手伪代码:
forEach(arrayelements) {
asyncQueryFunction(function(qres) {
//work with query results.
});
}
// finally, AFTER all callbacks did return:
res.render("myview");
怎么做?
如果这还不够清楚,我会解释:
我需要执行一系列“更新”查询(在 mongodb 中,通过 mongoose),循环遍历文档 ID 列表。对于数组中的每个 id,我将调用一个异步函数,该函数将返回查询结果(实际上我不需要对它们做任何事情)。
我知道我必须使用.forEach() javascript 循环,但是只有当我的所有异步查询都完成时,我才能执行我的“最终”回调?
当我要执行“有限”系列任务时,我已经在使用出色的异步库 (https://github.com/caolan/async) 来完成此类任务。但我不认为我可以将一组不同的函数传递给它。
我可以吗?
【问题讨论】:
-
您可以使用异步流控制库,“异步”是最流行的 (github.com/caolan/async)
标签: node.js asynchronous express