我正在设置一个项目,并使用ui-router。 要求是要保持附加的网址,例如:#/ home / contacts。 为了实现这一点,我必须使用嵌套状态。 例如:home和home.contacts,其中home state将在模板中填充。
但我希望在root级别有一个单独的ui-view,index.html,当我点击url时会获得模板,例如家庭或家庭/联系人。 是否可以使用ui-router获得此行为?
简而言之,在index.html中使用单个ui-view嵌套行为[未嵌套,我想要追加url]。
请注意
答案 0 :(得分:1)
您可以指定明确回家/联系人的状态网址吗?
请参阅下面的示例:
app.config(function($stateProvider) {
var routes = [
{
state: 'home',
config: {
url: '/home',
template: '<h3>Home</h3>'
}
},
{
state: 'contacts',
config: {
url: '/home/contacts',
template: '<h3>Contacts</h3>'
}
}];
routes.forEach(function(route) {
if (route.state) {
$stateProvider.state(route.state, route.config);
}
});
});
查看:强>
<body ng-controller="MainCtrl">
<a ui-sref="home">Home</a>
<a ui-sref="contacts">Contacts</a>
<div ui-view></div>
</body>
使用Plnkr示例here。