Javascript 角JSUI路由器共享控制器
我想给我的UI的两个部分提供相同的控制器,但仍然让它们拥有各自独特的控制器Javascript 角JSUI路由器共享控制器,javascript,angularjs,angular-ui-router,Javascript,Angularjs,Angular Ui Router,我想给我的UI的两个部分提供相同的控制器,但仍然让它们拥有各自独特的控制器 $stateProvider .state('standard.page', { url: '/:page', resolve: { page: function($stateParams) { ... }, }, views: { 'content': { template
$stateProvider
.state('standard.page', {
url: '/:page',
resolve: {
page: function($stateParams) {
...
},
},
views: {
'content': {
templateUrl: '/tmpl/page',
controller: 'controllercontent'
},
'sideMenu': {
templateUrl: '/tmpl/menu',
controller: 'controllermenu',
}
}
})
所以我希望内容和侧菜单共享一个控制器。如果我在视图上方添加一个控制器,那么它需要一个新模板,我希望使用
标准
模板,而不是为此状态创建一个唯一的模板。在这个例子中,我能得到3个控制器吗?谢谢。我曾在某个时候与之斗争过,我相信我制作了一个无法直接访问的模板文件(通过abstract:true)。这里有一个例子
.state('standard', {
url: '/standard',
abstract: true,
templateUrl: '/tmpl/standard.html',
controller: 'SharedController'
},
})
.state('standard.page', {
url: '/:page',
resolve: {
page: function($stateParams) {
...
},
},
views: {
'content': {
templateUrl: '/tmpl/page',
controller: 'controllercontent'
},
'sideMenu': {
templateUrl: '/tmpl/menu',
controller: 'controllermenu',
}
}
});
在tmpl/standard.html文件中,确保文件中存在以下内容:
<div ui-view="sideMenu">
<div ui-view="content">
希望这能为您指明正确的方向。您找到了解决方案吗?