我正在使用ui-router角度。我想做的是当用户浏览以下链接时:
/
/contacts
/contacts/:id
它们默认显示与链接 / contacts /:id 相同的内容,默认值为:id,并且网址保持不变(未更改为 / contacts /:id < /强>)。
ui-router wiki上有一个关于此问题的常见问题解答,但它没有演示如何使用孙子甚至更深层次的后代状态进行初始化。
我尝试了几种不同的状态设置但无济于事。我做错了吗?这是示例页面:
答案 0 :(得分:0)
用.when()解决了这个问题。样品: ui-router-test
$urlRouterProvider
.when('/', ['$state', function ($state) {
$state.transitionTo('contacts.detail', {contactId: 1}, {location: false});
}])
.when('/contacts', ['$state', function ($state) {
$state.transitionTo('contacts.detail', {contactId: 1}, {location: false});
}])
.otherwise('/');
$stateProvider
.state("home", {
url: "/"
})
.state('contacts', {
url: '/contacts',
template: 'Contacts: <div ui-view></div>'
})
.state('contacts.detail', {
url: '/:contactId',
template: '<p class="lead">Contact ID is {{$stateParams.contactId}}</p>'
});