如果我有一个数组:
['one.html','two.html','three.html']
我怎么能炸开那个数组,给它应用一连串的承诺,然后再把它组合在一起呢?目前我的代码是这样的:
Promise.map(['one','two','three'], function(i) {
dbQuery('SELECT ' + i);
}).then(function(results) {
// This has an array of DB query results
});
我在想像:
Promise.map(['one','two','three'], function(i) {
dbQuery('SELECT ' + i);
})
.explode()
.then(function(result) {
// Individual result
})
.combine()
.then(function(results) {
// Now they're back as an array
});
现在,我知道 Bluebird 没有这些功能,所以我想知道正确的 Promise-y 方法是什么?