【问题标题】:How have in AngularJS with UI Router, multiple and nested views?AngularJS 与 UI 路由器、多个和嵌套视图有什么关系?
【发布时间】:2016-04-28 14:04:51
【问题描述】:

我一直在阅读有关 nested viewsmultiple views 的信息,但我找不到同时使用两者的示例

在一个着陆页中,我有多个视图,一个接一个。一张图讲一千个字:

考虑:

  • 每个部分/视图都有完整的窗口高度,所以在滚动时我想将位置更改为/view1/view2/view3 等。
    • 这应该与转到/view1/b/view3/b 并显示子视图(view1.bview3.b)兼容。
    • 滚动不应再次加载页面。

我成功地单独完成任务,但不是一起完成。

【问题讨论】:

  • 我成功地单独完成任务,但不是一起完成。 - 什么不起作用?
  • 我不明白你想要做什么。您想同时显示所有视图还是一个一个显示?您可以使用ng-include 指令根据$scope 中的变量加载不同的视图。 <div ng-if="displayview1" ng-include="'path/to/view1'"/><div ng-if="displayview2" ng-include="'path/to/view2'"/><div ng-if="displayview3" ng-include="'path/to/view3'"/>
  • 是的,我想同时显示所有视图。我想使用 ui 路由器而不是 ng-show / ng-if 因为我认为我会更好/更清洁。我会尝试ng-include
  • 状态层次并没有那么神奇。有一个例子确实表明我们可以使用 UI-Router stackoverflow.com/q/28800644/1679310 实现

标签: javascript angularjs angular-ui-router


【解决方案1】:

您可以将 $statePorivder 嵌套视图与

一起使用
       config(function ($stateProvider) {

            $stateProvider
              .state('main', {
                url: '/',
                views: {
                  '': {
                    templateUrl: 'app/main/layout.html',
                    controller: 'LayoutController'
                  },
                  'header@main': {
                    templateUrl: 'app/main/header/layout.html',
                    controller: require("./headerController.js")
                  },
                  'left@main': {
                    templateUrl: 'app/main/left/layout.html',
                    controller: require("./leftController.js")
                  },
                  'content@main': {
                    templateUrl: 'app/main/content/layout.html',
                    controller: require("./conentController.js")
                  },
                  'right@main': {
                    templateUrl: 'app/main/right/layout.html',
                    controller: require("./rightController.js")
                  }
                }
              });
          };

【讨论】:

  • 是的,这是多个视图,但我怎样才能在这些视图中转到一个子视图?在帖子示例中转到/view1/b。我需要知道为多个视图之一创建嵌套状态的方法
猜你喜欢
  • 1970-01-01
  • 2016-06-17
  • 2014-10-24
  • 2014-06-28
  • 2021-04-26
  • 1970-01-01
  • 1970-01-01
  • 2016-10-10
  • 1970-01-01
相关资源
最近更新 更多