我一直在四处寻找,但没有发现任何可以满足我需要的东西,或者任何一般的东西。
我正在构建的应用程序有以下状态:
app
- 主要父状态
facebook
- Facebook 所有路由的父状态
adwords
- Adwords 所有路由的父状态
bing
- Bing 所有路由的父状态
...
- 还有很多...很多...
例如,如果我想要 Facebook 概述,那就是 app.facebook.overview
。但是,它在我尝试过的任何方式中都不起作用(dot
注释、声明中的 parent
等)
$stateProvider
.state('app', {
url: '',
abstract: true,
templateUrl: 'assets/views/default.html'
})
.state('app.facebook', {
url: '/facebook',
abstract: true
})
.state('app.facebook.overview', {
url: '/overview',
templateUrl: '/assets/views/facebook/overview/overview.html',
controller: 'FacebookOverviewCtrl'
});
我尝试了abstract
和parent
的每种组合,以及dot
注释。我还没能让它发挥作用。它失败并给出以下错误:
Could not resolve 'app.facebook.overview' from state 'app'
我在这里做错了什么?我不明白,我遵循了它的文档,并在 Stackoverflow 上查看了这里的许多问题。有什么想法吗?
编辑:
我已经找到问题所在了。基本错误。我没有在主 angular.module 声明中包含该模块。嗯...凌晨 4 点为您编码。
最佳答案
我的回答基于这个here
基本上,您只需将 /facebook
的 url 设置为 url: ':facebook'
就可以了。
http://plnkr.co/edit/LQLYTu0YHlvTdB26vQcP
关于javascript - Ui-Router 与父级的深层嵌套状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38003057/