如何使用Angular UI-Router重新加载单个命名视图

时间:2016-05-18 13:08:57

标签: angularjs angular-ui-router angular-ui

我有一个由1状态和许多嵌套视图组成的屏幕

state 1:
    view 1:
        view 1.a:
        view 1.b:
        view 1.c:
    view 2:
    view 3:
        view 3.a:
        view 3.b:
    view 4:

每个视图和子视图都有自己的控制器和自己的已解析数据。如何在不重新加载其余视图的情况下告诉视图或子视图重新加载其控制器和已解析的数据?如果不可能,应该如何构建应用程序?

我研究过使用状态和子状态,但是在触发父状态时无法弄清楚如何将它们全部加载。

1 个答案:

答案 0 :(得分:0)

答案是 - 层次结构应该从状态而不是通过视图构建。

  

你应该真正研究doc (这是非常明确的,短的和   易于阅读)

     

然后可能会这样:

Nested states or views for layout with leftbar in ui-router?

看,我们可以

  • 重新加载任何子状态(并触发其resolves - ,不用重新加载其父级
  • 确保重新加载状态内的所有视图都重新加载(每个视图控制器都是重新初始化)

所以,答案应该是

将层次结构拆分为状态层次结构,而不是视图。导航到子项之间以及更改子项视图...同时从父项稳定视图中获利

检查plunker here