Warten auf den Abschluss nach mehreren Zusagen parallel mit jQuery

8

Ich möchte mehrere asynchrone Ajax-Anfragen mit der Deferred / Promise-Implementierung von jquery in die Warteschlange stellen:

%Vor%

Hier ist der Geigen-Link . Also meine Frage ist:

In dem Muster, in dem Schritt1 und Schritt2 parallel ausgeführt werden, erreicht der Code nicht die letzte Behandlungsfunktion. Warum?

    
crishushu 09.12.2013, 19:48
quelle

3 Antworten

6

Sie müssen das deferred obj in Schritt1 und Schritt2 auflösen

Versuchen Sie es

%Vor%     
Daiwei 09.12.2013 20:31
quelle
4

@Daiwei gibt eine gute Antwort.

Ein allgemeiner Hinweis, auf den man sich beziehen sollte, ist Ссылка von sergio-fry.

Wenn Sie einen dynamischeren Ansatz wünschen, bei dem Sie nicht im Voraus wissen, wie viele Argumente Sie parallel ausführen, ist hier eine gute Beispielerweiterung von JQuery (1.10 +):

%Vor%

Sehen Sie sich den Code in Aktion mit einem dynamischen Live-Beispiel an:

Ссылка

    
mraxus 26.08.2015 00:06
quelle
0

Er erreicht Ihre done -Funktion, wenn Sie ihm eine URL geben, die er tatsächlich erreichen kann (im Falle von jsfiddle würde das heißen /echo/html/ : Ссылка

Grundsätzlich müssen Sie nur Folgendes tun:

%Vor%     
Ryley 09.12.2013 19:52
quelle