我正在开发一个AngularJS应用程序。我已经完成了很多工作,但我仍然试图使用ui-router和uiBreadcrumbs来解决问题。所以这就是问题,我如何实现一个可以很好地放大的解决方案,与控制器的实现方式相同?为简洁起见,我在下面列出了示例代码uiBreadcrumbs。查看最后一个状态home.userList.detail。
angular.module('yourModule').config(function($stateProvider) {
$stateProvider
.state('home', {
url: '/',
views: {
'content@': {
templateUrl: ...
}
},
data: {
displayName: 'Home'
}
})
.state('home.usersList', {
url: 'users/',
views: {
'content@': {
templateUrl: ...
}
},
data: {
displayName: 'Users'
}
})
.state('home.userList.detail', {
url: ':id',
views: {
'content@': {
templateUrl: ...
}
},
data: {
displayName: '{{ user.firstName }} {{ user.lastName | uppercase }}'
}
resolve: {
user : function($stateParams, userService) {
return userService.getUser($stateParams.id);
}
}
});
答案 0 :(得分:4)
将函数包装在数组对象中,就像控制器一样:
resolve: {
user : [
'$stateParams', 'userService',
function($stateParams, userService) {
return userService.getUser($stateParams.id);
}
]
}