gpt4 book ai didi

javascript - AngularJS 中的 deferred.resolve()

转载 作者:行者123 更新时间:2023-11-29 17:16:18 26 4
gpt4 key购买 nike

我需要拦截 ng-view 的变化并加载一个“加载 div”叠加层,直到加载所有新图像。

我试图在我的 HttpInterceptor 中暂停 promise 回调,但我无法在第二次解决我的 promise 。

举个例子:

return function (promise) {
globalForTest = $q.defer();

return promise.then(function (response) {
console.log('first', response);
return globalForTest.promise;
}).then(function (response) {
console.log('second', response);
return response;
});

http://jsfiddle.net/Lmvjh/

当我尝试调用 globalForTest.resolve(value) 时,没有任何反应,也没有错误。

最佳答案

它有效,但由于您在 Angular 生命周期之外调用 resolve,因此您需要 explicitly call $scope.$apply使事情运转起来。否则不会调用回调。

Link to fixed JSFiddle

关于javascript - AngularJS 中的 deferred.resolve(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17426413/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com