Heim > Web-Frontend > js-Tutorial > Wie kann ich auf Zwischen-Promise-Ergebnisse in einer flachen Promise-Kette zugreifen?

Wie kann ich auf Zwischen-Promise-Ergebnisse in einer flachen Promise-Kette zugreifen?

Linda Hamilton
Freigeben: 2024-12-29 15:33:11
Original
514 Leute haben es durchsucht

How Can I Access Intermediate Promise Results in a Flat Promise Chain?

Zugriff auf Ergebnisse von Zwischenversprechen in einer Kette mit flachem Versprechen

Um Zwischenergebnisse für Versprechen innerhalb einer Kette mit flachem Versprechen abzurufen, ist es notwendig, die Kette in einzelne aufzuteilen Segmente.

Versprechenskombinatoren

Anstatt sich auf den Parameter eines einzelnen Rückrufs zu verlassen, um Zwischenwerte zu erhalten, Es wird empfohlen, Versprechenskombinatoren zu verwenden, um den gewünschten zusammengesetzten Wert zu erzeugen. Dieser Ansatz gewährleistet einen klaren und strukturierten Kontrollfluss und erleichtert die Modularisierung.

Beispiel

Betrachten Sie das folgende Beispiel:

function getExample() {
    var a = promiseA(…);
    var b = a.then(function(resultA) {
        // some processing
        return promiseB(…);
    });
    return Promise.all([a, b]).then(function([resultA, resultB]) {
        // more processing
        return // something using both resultA and resultB
    });
}
Nach dem Login kopieren

In diesem Beispiel der Promise-Kombinator Promise. all wird verwendet, um die Ergebnisse von a und b zu aggregieren. Der Rückruf, der auf Promise.all folgt, kann dann auf resultA und resultB zugreifen und diese verwenden, um den zusammengesetzten Wert zu erstellen.

Hilfsmethoden

Bibliotheken wie Q, Bluebird und when stellen Hilfsmethoden wie . verbreiten, um die Verarbeitung mehrerer Versprechen zu vereinfachen ES5.

…
return Promise.all([a, b]).then(function(results) {
    results.spread(function(resultA, resultB) { … });
});
Nach dem Login kopieren

Promise.join

Bluebird bietet eine spezielle Promise.join-Funktion als effizientere Alternative zur Promise.all- und .spread-Kombination.

…
return Promise.join(a, b, function(resultA, resultB) { … });
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie kann ich auf Zwischen-Promise-Ergebnisse in einer flachen Promise-Kette zugreifen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage