angularjs:选项卡式视图设计问题

angularjs:选项卡式视图设计问题,angularjs,angularjs-routing,Angularjs,Angularjs Routing,[编辑] 类似问题 到目前为止,使用AngularUI状态解决方案更好,还是应该坚持使用ng includes 到目前为止,我在AngularJS应用程序中每个URL有一个视图。我需要建立一个新的视图,它应该有3个选项卡,我在试图弄清楚如何设计视图架构方面遇到了困难 请注意,这三个选项卡后面的业务模型对象是相同的 第一个选项卡用于查看和编辑业务对象上的数据。在第一个选项卡中已经有两个“视图” 第二个选项卡用于查看分页表,该表显示业务对象子集合中的数据 第三个选项卡与第二个选项卡的作用相同,但用

[编辑]

类似问题

到目前为止,使用AngularUI状态解决方案更好,还是应该坚持使用ng includes


到目前为止,我在AngularJS应用程序中每个URL有一个视图。我需要建立一个新的视图,它应该有3个选项卡,我在试图弄清楚如何设计视图架构方面遇到了困难

请注意,这三个选项卡后面的业务模型对象是相同的

第一个选项卡用于查看和编辑业务对象上的数据。在第一个选项卡中已经有两个“视图”

第二个选项卡用于查看分页表,该表显示业务对象子集合中的数据

第三个选项卡与第二个选项卡的作用相同,但用于另一个子集合

显然,我不想一次加载整个业务对象。只有当用户导航到第二个或第三个选项卡时,我才会加载集合

我现在主要关心的是如何组织这些观点?AngularJS的限制是每页只有1个视图

此外,我需要处理浏览器历史记录,因此在选择选项卡时URL必须更改,但我必须重新加载任何数据(即,我不能重新加载控制器)


任何提示都将不胜感激。

作为记录,我最终使用了ui路由器及其状态管理,这非常棒。我花了一点时间来理解这些概念并将其付诸实践,但我设法毫不费力地构建了一组相当复杂的布局

您可以使用ng show、ng hide、ng include等根据某些变量显示隐藏内容。这些可在路线更改时在主控制器上设置。关于控制器,您可以让控制器重新加载,只需添加缓存对象,如果对象已加载,则不再加载它们。视图如何?编辑表单的HTML已经相当大了。如果我有更多(也就是说,标签和它们的内容),那最终会非常大。如何分离3个选项卡的html?将每个选项卡放在各自的html部分文件中。在url中使用ng include。ng include可以与ng show/ng-hide一起使用。好吧,手工实现所有这些逻辑似乎有点奇怪。使用布线和视图更容易处理。很遗憾,每页不允许多个视图。我已经更新了我的原始帖子,现在想知道是否应该使用Angular UI状态解决方案?我不愿意使用第三方解决方案,但另一方面,AngularJS路由系统似乎是它的致命弱点,heelI正在遭受同样的“进入壁垒”;我很难理解是否无法通过本机路由真正重用视图,而不是通过在每个模板上调用ng include来违反DRY,因为这些模板可能有一个同样由Angular驱动的公共nav方案。