如何判断带有子视图的angularjs ui.router视图何时完全加载?

时间:2015-06-04 20:54:45

标签: javascript html angularjs angular-ui-router

我有一个使用ui-router的angularjs应用程序。我有一个包含子视图的页面。我想知道页面何时完全加载类似于document.ready。我知道angularjs有$viewContentLoaded事件,但是会触发每个子视图。因此,当您添加它时,它将为您的每个子视图触发。有没有人知道一种方法来监听一个让我知道整个页面已经完成加载的事件?

1 个答案:

答案 0 :(得分:2)

您可以绑定到$stateChangeSuccess事件,并根据需要利用参数(例如,如果您只想为特定的toState执行某些操作)

  

$ stateChangeSuccess - 状态转换完成后触发。

一个例子可能包括......

$scope.$on('$stateChangeSuccess', function (event, toState, toParams, fromState, fromParams) {
    // done -- do something
});

您可以将此项包含在控制器或全球某个地方,例如run功能并绑定到$rootScope

有关详细信息,请参阅ui-router docs