2016-04-28 8 views
0

Ich habe das untenstehende Segment in meinem Code, ich weiß $ q.when löst das Versprechen mit dem gegebenen Wert und wird nie abgelehnt werden. In meinem Fall übergebe ich den booleschen Wert entweder wahr oder falsch an dieses Segment und ich kann sehen, dass die Fehlerrückruffunktion nach der Erfolgsrückruffunktion ausgeführt wird. Kurz gesagt, sobald der Wert (wahr/falsch) an "wann" übergeben wird, zuerst dann in $ q.when einmal nach dieser Ausführung als nächstes ausgeführt wird dann Abschnitt ausgeführt wird.

Meine Frage ist, warum seine Aufruffehler Rückruffunktion nach erfolgreicher Auflösung?

$q.when(true/false) 
     .then(function(data) { 
      if (data) { 
       return doSave(); 
      } 
     }) 
     .then(function() { 
      goNextPage(); 
     }); 
+0

wo ist Ihr Fehler Rückruf? Wie gehen diese beiden '' '' - Aussagen mit Ihrer Frage um? – smnbbrv

Antwort

1

Verwenden Sie .catch() für den Fehlerrückruf. .then() ist der Erfolgsrückruf. Sie haben zwei Erfolgsrückrufe hinzugefügt.