$ q。当布尔值传递

时间:2016-04-28 10:58:47

标签: angularjs promise angular-promise q

我的代码中有以下段,我知道$ q.when将解析具有给定值的promise并且永远不会被拒绝。在我的例子中,我将布尔值true或false传递给该段,我可以看到在成功回调函数后执行错误回调函数。 在Nutshell中,一旦将值(true / false)传递给'when',首先在$ q.when执行一次,然后执行该部分。

我的问题是为什么在成功解析后它的调用错误回调函数?

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

1 个答案:

答案 0 :(得分:1)

使用.catch()进行错误回调。 .then()是成功的回调。您添加了两个成功回调。