在运行方法期间等待所有控制器加载

时间:2014-05-09 14:37:54

标签: angularjs

我需要在页面加载时进行广播。问题是控制器从不捕获广播(我的猜测是因为它没有正确加载)。我已经做了一些关于如何等待控制器加载的研究,我发现我可以得到一个包含所有加载控制器的列表,如下所示:

searchApp.controller()._invokeQueue

如果我在模块/控制器的脚本中放置一个断点(结果大致相同),我会得到一个包含$injector,工厂方法 - broadcast和{{1}的列表}}。即使我在控制器中directives也不包含我的控制器。

那么我该如何等待控制器正确加载或获取加载的控制器列表?

1 个答案:

答案 0 :(得分:0)

$rootScope上设置变量,然后根据该变量显示/隐藏叠加层。我建议你的控制器和/或ng-view不要在body标签上定义,而是在子元素中定义,这样你就可以在那个" view"之外定义叠加层。

此处plunkr显示其工作原理。