我正在尝试处理Angular $q服务及其相关对象和API.当我在控制台中查看对象时,我看到:
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}
Run Code Online (Sandbox Code Playgroud)
它提出了几个问题:
$q.reject()和之间有什么区别deferred.reject()?什么时候使用?errorFnin deferred.promise.then(successFn, errorFn)和catchFnin 之间的关系是deferred.promise.catch(catchFn)什么?catch()函数是否会被调用?如果其中一个嵌套的promises也定义了catch函数怎么办?这种捕获会阻止最外层的捕获吗?谢谢.