我有以下状态声明( 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/