在html中,你可以通过用嵌套的html代码编写一个控制器作为另一个控制器的孩子:
<div ng-controller="parentCtrl">
<div ng-controller="childCtrl">
但是使用ui.router
,你只能指定一个状态是另一个状态,你如何使控制器也继承父状态的控制器?例如:
$stateProvider
.state('parent', {
url: '/',
views: {
'content': {
templateUrl : 'static/templates/parent.html',
controller : 'ParentController'
},
}
})
.state('parent.child', {
url: '/child',
views: {
'content@': {
templateUrl : 'static/templates/child.html',
controller : 'ChildController'
},
}
})
在这种情况下,ChildController
会自动从ParentController
继承吗?如果不是我怎么做到的?
答案 0 :(得分:0)
来自ui-router
documentation:
仅按视图层次结构的范围继承
请记住,范围属性仅继承状态链 如果你的州的意见是嵌套的。范围的继承 属性与您的状态嵌套无关 与嵌套视图(模板)有关。
所以,答案 - 这取决于。这取决于您在州链中配置/指定视图的方式。
希望它会有所帮助。