wha*_*ean 8 angularjs angular-ui-router
想象一下html如下:
<body ng-app="blocksApp">
Some content goes here
<div ui-view="monty">
<div ui-view="dave">Aaa</div>
<div ui-view="pete">Bbb</div>
<div ui-view="steve">Ccc</div>
</div>
</body>
Run Code Online (Sandbox Code Playgroud)
使用ui-router,有没有办法编写一个状态,将"dave"设置为一个新的html片段,同时保持其他所有内容不受影响.
我想这样做:
$stateProvider
.state('daveonly',{
url: "/dave",
views:{
'dave':{template:"Dave now has content"}
}
})
Run Code Online (Sandbox Code Playgroud)
我无法让它发挥作用.我想这样做的原因是有时我想用部分更新替换'Dave',有时我想用部分更新替换整个'monty'.似乎ui-router不喜欢在同一个html片段中嵌套ui-views.
从一个角度我想建议:
并检查以下内容是否适合您:
$stateProvider.state("daveonly", {
views: {
"dave": {
templateUrl: 'daveonly.tpl.html',
},
"pete": {
templateUrl: 'pete.tpl.html',
},
"steve": {
templateUrl: 'steve.tpl.html',
},
}
});
Run Code Online (Sandbox Code Playgroud)
但从另一个角度来看,仅使用一个 ui 视图并重新设计当前的 ui 视图以成为控制器/服务的适当指令可能更有用:使用控制器/服务的指令可以帮助正确管理部分重新加载,并且编写单元测试。