首先,道歉我没有一个例子可以展示。目前的情况是我正在使用UI路由器,我有3个视图,每个视图使用不同的控制器,每个视图在同一页面上,状态名称为'结果'。即头部,内容和侧边栏。
但是,当我呼叫true
时,只有一个控制器(内容)返回$state.is('result')
。我也试过$state.includes('result')
。
当我仅记录$state
时,所有3个状态对象在\result
中显示相同的正确$state.current.name
,但是,如果我尝试记录$state.current
直接地,name
变为空白,其中2个。
我已尝试更换视图的顺序,但只有内容返回true
。
我多次阅读该文档,但我无法找到原因。请帮忙!
.state('result', {
url: '/result',
views: {
'headView' : {
templateUrl: 'modules/core/templates/head.html'
},
'contentView' : {
templateUrl: 'modules/core/templates/content.html'
},
'sidebarView' : {
templateUrl: 'modules/core/templates/sidebar.html'
},
}
})
答案 0 :(得分:0)
将控制器置于状态视图定义中,其中templateUrl
已定义。
E.G。
<强> DEMO 强>
.state('result', {
url: '/result',
views: {
'headView' : {
templateUrl: 'modules/core/templates/head.html',
controller: 'HeadViewController',
},
'contentView' : {
templateUrl: 'modules/core/templates/content.html',
controller: 'ContentViewController'
},
'sidebarView' : {
templateUrl: 'modules/core/templates/sidebar.html',
controller: 'SidebarViewController'
},
}
})