当我在ui-router中测试事件的顺序时,我期待$stateChangeSuccess
将在$viewContentLoaded
之后,但它不是,如下面的屏幕截图所示:
如果我通过templateUrl属性远程加载视图,则可能需要一段时间才能加载(取决于网络连接)。我通过观察stateChangeSuccess / Error事件来显示我的加载指示器,并且我不希望加载指示器在视图尚未加载时过早停止。我想我会看$viewContentLoaded
事件,但我希望与我的手表保持一致(stateChangeStart / Success)等。我想知道stateChangeSuccess是否实际等到视图内容加载后?
答案 0 :(得分:0)
它始终按此顺序加载。
我刚刚在一个解决方案和templateProvider(延迟视图)中加了一个延迟来测试它,在这两种情况下,事件的顺序是相同的。
另外,当我在templateProvider中延迟视图加载时,$ stateChangeSuccess在加载视图之前没有触发(解析中没有任何内容可以延迟它)。因此,$ stateChangeSuccess在加载视图之前不会触发。