angularjs - Angular ui-router 嵌套状态 - 无法指定父级

标签 angularjs angular-ui-router state

我有以下状态声明( Angular v1.5.5):

$stateProvider
    .state('appPublic', {
        abstract: true,
        data: { restricted : false }
    })
    .state('home', {
        url: '/',
        parent: 'appPublic',
        templateUrl: 'app/views/main.html',
        controller: 'mainCtrl'
    });

当我打开网站时,我看不到主要 html 内容(home 状态)。但是,当我删除 parent: 'appPublic' 声明时 - 它就可以工作了。那么,为什么我不能指定状态的父级?

最佳答案

每个父级都必须为其子级提供一个 View 目标(如果使用未命名 View ,即使用绝对 View 命名不会跳过父级 - Angularjs ui-router not reaching child controller)。所以这应该有效

.state('appPublic', {
     abstract: true,
     data: { restricted : false },
     template: '<div ui-view=""></div'
 })

现在, subview (未命名 View )将被放置在 ui-view 目标中,在父级模板中声明

关于angularjs - Angular ui-router 嵌套状态 - 无法指定父级,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39546772/

相关文章:

angularjs - ionic 标签和侧边菜单历史记录

android - 保存音乐状态

java - 为具有 n 个状态的 FSM 定义状态。 (java)

Javascript 纯文本字符编码

javascript - Angular js - 指定 Rails api 的主机名

javascript - Angular - CDN 引用作品,本地 min 文件没有

angularjs - 如何解决 Angular js中的cookieStore未定义错误?

javascript - 用户界面路由器 : Keep url after $stateChangeError (while resolving dependencies)

javascript - 尝试注入(inject) UI-Router 时收到 "injector:modulerr"错误

Android UI 更新线程 - 保存和恢复它