Als «promise» getaggte Fragen

Versprechen sind eine Taktik für verzögertes Computing, die für verschiedene Arten der Parallelität geeignet ist: Parallelität von Threads und Ereignisschleifen für lokale Berechnungen sowie synchrones und asynchrones Remote-Messaging. Ein Versprechen repräsentiert das Endergebnis einer asynchronen Operation. Die primäre Art, mit Versprechungen zu arbeiten, besteht in einer Methode, die Transformationen vom möglichen Wert oder Versagensgrund des Versprechens zu einem neuen Versprechen registriert.




17
Wie greife ich auf frühere Versprechungsergebnisse in einer .then () -Kette zu?
Ich habe meinen Code in Versprechen umstrukturiert und eine wundervolle lange flache Versprechenskette aufgebaut , die aus mehreren .then()Rückrufen besteht. Am Ende möchte ich einen zusammengesetzten Wert zurückgeben und muss auf mehrere Zwischenversprechen zugreifen . Die Auflösungswerte aus der Mitte der Sequenz sind jedoch im letzten Rückruf nicht im Geltungsbereich. …



10
jQuery verschiebt und verspricht - .then () vs .done ()
Ich habe über aufgeschobene und versprochene jQuery-Angebote gelesen und kann den Unterschied zwischen der Verwendung von .then()& .done()für erfolgreiche Rückrufe nicht erkennen. Ich weiß, dass Eric Hynds dies erwähnt .done()und .success()derselben Funktionalität zugeordnet ist, aber ich vermute , dass dies der Fall ist, .then()da alle Rückrufe nach Abschluss eines erfolgreichen …

10
Versprechen nicht nur Rückrufe?
Ich habe JavaScript seit ein paar Jahren entwickelt und verstehe die Aufregung um Versprechen überhaupt nicht. Alles, was ich tue, scheint sich zu ändern: api(function(result){ api2(function(result2){ api3(function(result3){ // do work }); }); }); Wofür ich sowieso eine Bibliothek wie Async verwenden könnte , mit so etwas wie: api().then(function(result){ api2().then(function(result2){ api3().then(function(result3){ …

18
Warten Sie, bis alle Versprechen erfüllt sind, auch wenn einige abgelehnt wurden
Nehmen wir an, ich habe eine Reihe von Promise s, die Netzwerkanforderungen stellen, von denen eine fehlschlagen wird: // http://does-not-exist will throw a TypeError var arr = [ fetch('index.html'), fetch('http://does-not-exist') ] Promise.all(arr) .then(res => console.log('success', res)) .catch(err => console.log('error', err)) // This is executed Nehmen wir an, ich möchte warten, …

5
JavaScript-Versprechen - ablehnen gegen werfen
Ich habe mehrere Artikel zu diesem Thema gelesen, aber es ist mir immer noch nicht klar, ob es einen Unterschied zwischen dem Promise.rejectAuslösen eines Fehlers gibt. Zum Beispiel, Verwenden von Promise.reject return asyncIsPermitted() .then(function(result) { if (result === true) { return true; } else { return Promise.reject(new PermissionDenied()); } }); …

9
Was ist std :: versprechen?
Ich bin ziemlich vertraut mit C ++ 11 ist std::thread, std::asyncund std::futureKomponenten (siehe zB diese Antwort ), die geradlinig sind. Ich kann jedoch nicht genau verstehen std::promise, was es ist, was es tut und in welchen Situationen es am besten verwendet wird. Das Standarddokument selbst enthält nicht viele Informationen, die …


5
Was ist der Unterschied zwischen Rückgabewert oder Promise.resolve von da an ()
Was ist der Unterschied zwischen: new Promise(function(res, rej) { res("aaa"); }) .then(function(result) { return "bbb"; }) .then(function(result) { console.log(result); }); Führen Sie das Code-Snippet ausErgebnisse ausblendenErweitern Sie das Snippet und das: new Promise(function(res, rej) { res("aaa"); }) .then(function(result) { return Promise.resolve("bbb"); }) .then(function(result) { console.log(result); }); Führen Sie das Code-Snippet …


20
Javascript Promise außerhalb des Funktionsumfangs auflösen
Ich habe ES6 Promise verwendet. Normalerweise wird ein Versprechen so konstruiert und verwendet new Promise(function(resolve, reject){ if (someCondition){ resolve(); } else { reject(); } }); Aber ich habe etwas wie das Folgende getan, um die Entschlossenheit aus Gründen der Flexibilität nach draußen zu bringen. var outsideResolve; var outsideReject; new Promise(function(resolve, …

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.