关于这种情况我的逻辑该如何写?
代码如下: 555.jpg
20 回复
你要把读取数据库promise化,每次读取数据库,return一个promise。
在循环里,将每次读取数据库创建的promise插入到一个数组里去。 然后将上面的这个数组作为Promise.all()的参数,此时这个Promise.all方法返回一个新的promise。
var promises = []; for(...) { promise.push(...); } Promise.all(promises).then(function(data){ // 当执行到这里的时候,循环读取数据库的工作已经做完了,通过data可以取读取数据库返回的值 });
@blackjack 问题已经解决了,我用的async.each。 不过我没看到有async.while啊,看了下github上文档里也只有whilst, doWhilst这2个。