使用ui-router重定向到AngularJS中的默认嵌套状态

时间:2015-07-16 09:19:28

标签: javascript angularjs angular-ui-router

我正在使用ui-router处理重定向。

我有一个包含物品的菜单。当我选择其中一个时,它会重定向到相应的html模板进行加载。每个html模板都包含选项卡。

我想为菜单中的每个项目打开默认标签。

以下是我的陈述:

$stateProvider

.state('app.my', {
  url:'/my/:numeral',
  templateUrl:
    function (stateParams) {
        return stateParams.numeral + '.html';
    }
})

.state('app.my.first', {
  url:'/:filter',
  templateUrl:'list-results.html',
  controller: 'FilterCtrl',
    controllerAs: 'results'
})

.state('app.my.second', {
  url:'/:filter',
  templateUrl:'list-results.html',
  controller: 'FilterCtrl',
    controllerAs: 'results'
});

我在这里创建了一个Plunkr,当我手动点击标签时,它可以正常工作。 我的目标是为每个菜单项设置默认的打开选项卡。

http://plnkr.co/edit/oIQDIhx2vrp1o01Xz3EL?p=preview

提前致谢!

1 个答案:

答案 0 :(得分:0)

编辑ui-sref这样的值:

<ul class="nav nav-pills">
    <li>
      <a class="nav-tab" ui-sref-active="active" ui-sref="app.my.first({numeral:'first',filter:'draft'})">First</a>
    </li>
    <li>
      <a class="nav-tab" ui-sref-active="active" ui-sref="app.my.second({numeral:'second',filter:'draft'})">Second</a>
    </li>
  </ul>