Wie Kette ein Versprechen.alle mit anderen Versprechungen?
Ich durchführen wollen mein code in der folgenden Reihenfolge:
- Versprechen 1
- Warten Sie 1 zu tun, dann tun Sie Versprechen 2+3 gleichzeitig
- Letzte Funktion wartet auf die Verheißung 2+3 zu tun
Ich habe einige Schwierigkeiten es herauszufinden, meinen code so weit unten ist.
function getPromise1() {
return new Promise((resolve, reject) => {
//do something async
resolve('myResult');
});
}
function getPromise2() {
return new Promise((resolve, reject) => {
//do something async
resolve('myResult');
});
}
function getPromise3() {
return new Promise((resolve, reject) => {
//do something async
resolve('myResult');
});
}
getPromise1()
.then(
Promise.all([getPromise2(), getPromise3()])
.then() //???
)
.then(() => console.log('Finished!'));
Wie adeneo erklärt, was du bei einer Rücksendung aus einer dann-handler wird an den nächsten handler
InformationsquelleAutor ABC | 2016-04-21
Du musst angemeldet sein, um einen Kommentar abzugeben.
Nur zurück
Promise.all(...
spread
wenn Sie wollen die Kette ein weiteres Versprechen in einer ordentlichen Art und Weise 😉ist toll, aber ist das nicht ein
Bluebird
Erweiterung, und nicht ES6?jup sorry, du hast Recht. Aber hoffentlich eines Tages wird es ein Teil der standard 🙂
Vielen Dank für diese! Ich wusste nicht, Sie hatte "return Versprechen.alle(...)" - ich Tat es ohne die Rückkehr und bemerkt es nicht ausführen um...
InformationsquelleAutor adeneo
Ich weiß, es ist ein Alter thread, aber ist das nicht
ein wenig überflüssig? Die Idee der Fette Pfeil ist, dass Sie es schreiben können als:
wodurch der resultierende code etwas übersichtlicher:
Trotzdem, vielen Dank für die Antwort, ich steckte mit dieser 🙂
InformationsquelleAutor Polakko