【问题标题】:Is there an event Angular fires when all callbacks are complete当所有回调完成时是否有事件 Angular 触发
【发布时间】:2015-09-23 19:19:42
【问题描述】:

例如,一个页面包含多个控制器和指令,每个控制器和指令都发出单独的 $http 请求来填充它们的数据。

是否有一个我们可以订阅的全局事件将在 Angular 完成调用所有回调时触发(即在所有 $http 请求完成并且所有回调都已执行之后)?

【问题讨论】:

  • 这可能会有所帮助:stackoverflow.com/questions/21138388/…
  • 你可以使用 $q.all 给它一系列承诺..
  • 并非没有自己对它们进行分组,例如使用 $q.all 。它无法知道将发出多少请求或哪些请求与其他请求相关。还有$httpInterceptors可以使用

标签: angularjs


【解决方案1】:

原来有一个名为$browser 的未记录的角度服务可以完成此操作并被量角器使用。

waitForAngular = function(el, angular, callback) {
  try {
    angular.element(el).injector().get('$browser').notifyWhenNoOutstandingRequests(callback);
  } catch (e) {
    callback(e);
  }
};

https://www.snip2code.com/Snippet/91565/Wait-until-angularjs-is-done-with-proces

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-01-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-10-26
    • 1970-01-01
    • 2023-03-12
    • 1970-01-01
    相关资源
    最近更新 更多