所以我有一個承諾,從服務器收集數據,但一次只收集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