2016-12-04 8 views

答えて

1

あなたは、ライブラリを必要としません。それらすべてがPromise.allで終了するのを待ちその後

promises = promises.map((promise, i) => wait(i * timeout).then(promise)); 

:適した初期遅延を持っているあなたの約束を変換した後、あなたのタスクは約束を返す関数の配列として利用できると仮定すると、

ここ
Promise.all(promises); 

waitかかわらず、決済状況のすべての約束を待つために

const wait = ms => new Promise(resolve => setTimeout(resolve, ms)); 

などの明らかなものは次のとおりです。

promises = promises.map((promise, i) => wait(i * timeout).then(promise) 
    .catch(reason => console.log("one rejected", reason, "continuing...")); 
+0

「Promise.all」は、最初に拒否された約束事で発生しますが、約束または却下された約束に関係なく、すべてが終了するのを待たせることができますか? –

関連する問題