Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用ui路由器将子或孙子状态设置为默认索引状态?_Javascript_Angularjs_Angular Ui Router - Fatal编程技术网

Javascript 如何使用ui路由器将子或孙子状态设置为默认索引状态?

Javascript 如何使用ui路由器将子或孙子状态设置为默认索引状态?,javascript,angularjs,angular-ui-router,Javascript,Angularjs,Angular Ui Router,我正在使用angular和ui路由器。我想做的是当用户浏览到以下链接时: / /contacts /contacts/:id 它们都默认显示与链接/contacts/:id相同的内容,默认为:id,并且url保持不变,不会更改为/contacts/:id ui路由器wiki上有一个关于这一点的常见问题解答,但它没有演示如何使用孙辈或更深层的后代状态初始化 我尝试了几种不同的状态设置,但都没有效果。我做错了吗?以下是示例页面: 解决了这个问题。什么时候。样本: $urlRouterProvid

我正在使用angular和ui路由器。我想做的是当用户浏览到以下链接时:

/
/contacts
/contacts/:id
它们都默认显示与链接/contacts/:id相同的内容,默认为:id,并且url保持不变,不会更改为/contacts/:id

ui路由器wiki上有一个关于这一点的常见问题解答,但它没有演示如何使用孙辈或更深层的后代状态初始化

我尝试了几种不同的状态设置,但都没有效果。我做错了吗?以下是示例页面:


解决了这个问题。什么时候。样本:

$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>'
});