0
我試圖簡化這些倒有幾分之前解決:無極鏈不等待承諾結束
passData.savedDBGames.forEach((gameInfo) => {
return new Promise((resolve, reject) => {
stats.getPlayersStats(gameInfo.fixtureID).then((playerStats) => {
playerStatsPromise.push(playerStats);
console.info('Grab Done');
resolve();
});
});
});
Promise.all(playerStatsPromise)
.then(function() {
console.info('All Done');
app.io.emit('admin', 'Admin: done');
resolve(passData);
});
據我瞭解Promise.all
應該等到所有包含在playerStatsPromise
的承諾已經解決?
那麼爲什麼All Done
在Grab Done
之前完成?
什麼是'數據2 '? – trincot
你的代碼沒有意義。特別是'forEach'是爲了引起副作用,但是你要在它內部返回一個新的Promise。 – aaaaaa
'data2'來自更大的承諾鏈。 @aaaaaa我做到了這一點,試圖強制承諾退還,這只是我試驗。 –