在自定义ui-router配置属性中访问$ stateParams

时间:2015-09-21 17:41:05

标签: javascript angularjs angular-ui-router

我正在尝试在自定义ui-router状态配置属性中访问$stateParams,但我在记录它时得到的只是一个空白对象。

这是可以预料到的,因为我偏离默认的ui-router配置,我完全明白,但我正在使用ui-router并尝试使用一个复制resolve功能自定义配置对象,因此我需要访问所述配置对象中的$stateParams

我的目标是能够解析一组承诺,这些承诺可能需要访问$stateParams

这是plunkr

1 个答案:

答案 0 :(得分:0)

你需要在你的州中加入“解决”:

这里是代码

        .state('app.test', {
        url: '/test/:id',
        controller: 'testController',
        resolve: {
            resolveableDate: ['$stateParams', 'AwesomeService', function($stateParams, AwesomeService) {

                // this is blank, as is to be expected
                console.log($stateParams);

                return AwesomeService.getData($stateParams.id);
            }]
        }
    });

演示链接:http://plnkr.co/edit/rmuh3gt8K7CXMxwkRjaD?p=preview

您可以毫无问题地解决承诺。