Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/20.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
Angularjs 嵌套状态下角度ui路由缺少参数_Angularjs_Nested_Angular Ui Router - Fatal编程技术网

Angularjs 嵌套状态下角度ui路由缺少参数

Angularjs 嵌套状态下角度ui路由缺少参数,angularjs,nested,angular-ui-router,Angularjs,Nested,Angular Ui Router,我使用的是ui路由器,我有两种状态 母国: .state('list', { url: '/list', templateUrl: 'list.html', controller: 'ListCtrl', resolve: { getItem : function($http, $stateParams){ return $http.get('api/rs/getItem.j

我使用的是ui路由器,我有两种状态

母国:

.state('list', {
        url: '/list',
        templateUrl: 'list.html',
        controller: 'ListCtrl',
        resolve: {
            getItem :  function($http, $stateParams){
                return $http.get('api/rs/getItem.json', {params: {id: $stateParams.itemId}})
                   .then (function (data) {
                       return data;
                 });
            }
        }
    })
儿童国家:

.state('list.item', {
        url: '/:itemId',
})
如果我调用函数:

$state.go('list.item', {itemId: myItemId});

父状态的resolve函数被调用(因为继承)。问题是,父状态“list”在url中缺少“itemId”参数,因此该参数永远不会被捕获。类似地,如果我将resolve函数移动到子状态“list.item”,控制器会捕获一些错误,它试图注入“getItem”,但失败了。谁能告诉我正确的方法是什么?我看了文件,但我想不出来。谢谢

您在url中定义了itemId,并从$state.go传递了listId,以便替换

 $state.go('list.item', {listId: myListId});

$state.go('list.item', {itemId: myListId});