所以我有一个承诺,从服务器收集数据,但一次只收集50个响应。我有250个回复收集。如何创建一个承诺循环
我可能只是concate承诺在一起,就像下面
new Promise((resolve, reject) => {
resolve(getResults.get())
})
.then((results) => {
totalResults.concat(results)
return getResults.get()
})
.then((results) => {
totalResults.concat(results)
return getResults.get()
}).then((results) => {
totalResults.concat(results)
return getResults.get()
})
在这种情况下,我只需要250个结果,因此这似乎是一个易于管理的解决方案,但有一个循环concating承诺的一种方式。所以我运行循环5次,每次运行下一个承诺。
对不起,我对承诺是新的,如果这是回调,这是我会做的。
'get'是否会返回一个承诺? –
我建议查看[async](http://caolan.github.io/async/)库。它会让你的生活更轻松。看看'async.eachLimit'功能。 – forrestmid
@forrestmid不,这不符合承诺。 – Bergi