当子视图也实现控制器时,在抽象命名视图中使用控制器似乎不会触发该控制器,只有子控制器触发。我的设置如下:
$stateProvider
.state('app', {
abstract: true,
views : {
header: {
template: "<p>My header</p>"
},
section: {
template: "<ui-view />",
controller: function () {
alert('loaded main control');
}
}
}
})
.state('app.home', {
url: '',
views: {
'section@': {
template: "<p> My initial content here </p>",
controller: function () {
alert("loaded home control");
}
}
}
})
http://plnkr.co/edit/WjUYwEfrNbZrdpUQAole?p=preview
在我看来,上面的演示应该触发两个警报,为什么不发生这种情况?
答案 0 :(得分:0)
在app.home
中,您使用section@
作为视图名称,这是绝对匹配,然后与摘要{{1}中定义的section
视图冲突国家。
事实上,第一个app
视图似乎毫无用处。您可以尝试以下代码段。
section
中提供了更多详细信息