【发布时间】:2016-01-20 07:09:01
【问题描述】:
我有一个配置文件,其中包含如下所示的状态:
$stateProvider.state('home', {
url: '?data',
abstract: true,
resolve: {
data: ['MyModel', '$stateParams', function (MyModel, $stateParams) {
return MyModel.getData($stateParams);
}]
}
});
然后是一个看起来像这样的模块文件:
App.module.run(['$rootScope', '$state', function ($rootScope, $state) {
$rootScope.$on('$stateChangeStart', function (event, toState, toParams) {
toParams 将返回 object{data:undefined}。我知道解析有效并且应该有数据。如何正确地将解析从我的状态传递到 $stateChangeStart 然后访问它?
我尝试将我的数据解析手动注入我的模块文件,但它返回未定义。我已经尝试设置params 属性,看看这是否可行:
resolve: {
data: ['MyModel', '$stateParams', function (MyModel, $stateParams) {
return MyModel.getData($stateParams);
}]
},
params: {
'foo':'bar', // this would be available in toParams
'data': //can i put my data here?
}
【问题讨论】:
标签: angularjs angular-ui-router state resolve