Angulaire du q$.reject() vs différé.reject()

Je suis en train d'essayer d'obtenir une poignée sur l'angle de $q service et de ses objets et de l'Api. Quand je regarde les objets de ma console je vois:

var deferred = $q.defer()

...(and then from console inspection)...

$q: Object {defer: function, reject: function, when: function, all: function}

deferred: Object {resolve: function, reject: function, notify: function, promise: Object}

deferred.promise: Object {then: function, catch: function, finally: function}

Il soulève quelques questions:

  1. Quelle est la différence entre $q.reject() et deferred.reject()? Lors de l'utilisation de chacun?
  2. Quelle est la relation entre le errorFn dans deferred.promise.then(successFn, errorFn) et la catchFn dans deferred.promise.catch(catchFn)?
  3. Si j'ai un tas d'imbrication des promesses et une erreur se produit, le ultrapériphériques catch() fonction toujours être appelé? Si l'un des imbriquée promesses dispose également d'une fonction capture défini? Va que les prises de prévenir le plus éloigné de la prise d'exécution?

Grâce.

InformationsquelleAutor lostdorje | 2014-06-27