$ q私有$$状态?

时间:2015-11-05 04:17:03

标签: angularjs angular-promise

当使用Angular的$ q时,为什么一切都保存在$$状态对象下?我的印象是双美元在Angular中意味着私有,在这种背景下对我来说并不合适。我是否错误地实现了我的承诺?

只是测试,这会返回带有$$状态的对象:

$scope.makePromise = function(){
  return $q(function(resolve, reject){
    resolve('Promise Resolved');
  });
}

1 个答案:

答案 0 :(得分:0)

嗯,$$state是Angular如何跟踪其承诺的内部状态。您不应该在自己的代码中使用它,它可能在将来中断。

相反,如果你想检查承诺的状态 - 你应该为它添加一个then处理程序:

myPromise.then(function(el){
    // I got here after the promise resolved and `el` is the value
    // it fulfilled with.
}, function(e){
    // I got here after the promise rejected and `e` is the error
    // it rejected with.
});