【问题标题】:Child states not working with UI-Router子状态不适用于 UI-Router
【发布时间】:2016-03-17 19:25:44
【问题描述】:

我有以下代码sn-p:

$stateProvider.state('unlogged', {
    url: '/',
    templateUrl: 'unlogged/unlogged.html'
}).state('sign-in', {
    parent: 'unlogged',
    url: '/sign-in',
    templateUrl: 'sign-in/sign-in.html',
    controller: 'SignInCtrl'
}).state('sign-up', {
    parent: 'unlogged',
    url: '/sign-up',
    templateUrl: 'sign-up/sign-up.html',
    controller: 'SignUpCtrl'
});

当我转到/sign-up时,它没有加载父级,也没有加载子级。

我检查页面时的 HTML:<section ui-view="" class="ng-scope"></section>

unlogged.html 有 ui-view 指令:<div class="row" ng-class="{slide : effect}" ui-view></div>

【问题讨论】:

  • 控制台中是否出现任何错误?

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


【解决方案1】:

有a working example

要使子状态 url 在没有父部分的情况下工作,我们需要使用符号 ^ 重置 url 映射:

.state('sign-in', {
    parent: 'unlogged',
    url: '^/sign-in',
    ...
  })
.state('sign-up', {
    parent: 'unlogged',
    url: '^/sign-up',
    ...
  });

在行动中检查它here

也许还观察到这一点:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-24
    • 1970-01-01
    相关资源
    最近更新 更多