ui-router - 使用相同的路由加载模板和子视图

时间:2014-05-08 10:21:08

标签: javascript angularjs angular-ui-router

我是ui-router的新手,我希望有人可以帮助我基本上从一条路线加载2个视图。我正在查看示例plunk,我试图让它在路线的同时加载子视图,但我无法使this plunk起作用。我认为通过创建一个抽象路线,然后在子路径中调用state.go它可以工作,但我遗漏了一些东西。

任何想法都赞赏。

        controller: function($scope){
            $state.go('route1.list');
            $scope.items = ["A", "List", "Of", "Items"];
          }

1 个答案:

答案 0 :(得分:0)

你得到的错误正是指出了问题,你已经将route1定义为抽象的并且没有问题,但你不能进入一个抽象的状态,抽象的状态仅在您导航到该抽象状态的子状态时运行,因此您必须转到子状态,因此更改ui-sref =" route1"到ui-sref="rout1.list"

<li><a ui-sref="route1.list">Route 1</a></li>

并将$ state注入route1.list的控制器:

.state('route1.list', {
              url: "/list",
              templateUrl: "route1.list.html", //child view
              controller: function($scope,$state){
                $state.go('route1.list');
                $scope.items = ["A", "List", "Of", "Items"];
              }
          })

See working plunk