Javascript 有棱角的承诺装饰者得到解决
我正试图在承诺解决完成后收到一条消息Javascript 有棱角的承诺装饰者得到解决,javascript,angularjs,Javascript,Angularjs,我正试图在承诺解决完成后收到一条消息 $provide.decorator('$q', function ($delegate) { var defer = $delegate.defer; $delegate.defer = function () { var deferred = defer(); console.log("defer"); return deferred; }; $delegate.resolv
$provide.decorator('$q', function ($delegate) {
var defer = $delegate.defer;
$delegate.defer = function () {
var deferred = defer();
console.log("defer");
return deferred;
};
$delegate.resolve = function () {
var resolved = resolve();
console.log("resolve");
return deferred;
};
return $delegate;
});
我不确定它是否完全正确,但想象一下,它看起来是这样的
$provide.decorator('$q', function ($delegate) {
var defer = $delegate.defer;
$delegate.defer = function () {
var deferred = defer(),
resolve = deferred.resolve;
deferred.resolve = function(data) {
console.log('resolved');
return resolve(data);
};
return deferred;
};
return $delegate;
});
resolve
不是$q
的方法,而是延迟对象的方法