Ab und zu stehe ich vor dem Problem, in JavaScript mehrere Promises in einer festgelegten Reihenfolge ausführen zu müssen.
Anders als bei parallel auszuführendenden Promises (via Promise.all()) gibt es meines Wissens nach dafür keine Methode am Promise-Objekt. Diese Funktionalität muss man sich also selbst zusammenbauen.
So habe ich dieses Problem für mich gelöst:
Folgendes war mit bei dieser Lösung wichtig:
Alle Promises werden in eine anonyme Funktion verpackt, so dass sie erst erst ausgeführt werden, wenn das vorhergehende Promise aufgelöst wurde.
Sobald ein Fehler auftritt und ein Promise nicht aufgelöst (resolved) werden kann, wird die Sequenz angehalten, keine weiteren Promises ausgeführt und die aufgetretenen Fehler propagiert.
Hinterlasse einen Kommentar
Auf der eigenen Website geantwortet? Sende eine Webmention!
Hinterlasse einen Kommentar
Auf der eigenen Website geantwortet? Sende eine Webmention!