我遇到了这个问题,我在父母和家庭中有相同的解决功能。儿童状态 - 并且取决于儿童状态,我希望它具有不同的价值 不知何故,它不是覆盖它的实现,而只是从父状态获取行为。
.state('wines', {
url: '/wines',
templateUrl: 'partials/products/index',
controller: 'cwProductsController',
resolve: {
merchandiseView: function() {
return "featured";
}
}
}).state('wines.featured', {
url: "/featured",
templateUrl: 'partials/products/index',
controller: 'cwProductsController',
resolve: {
merchandiseView: function() {
return "featured";
}
}
}).state('wines.curatorsChoice', {
url: "/curators-choice",
templateUrl: 'partials/products/index',
controller: 'cwProductsController',
resolve: {
merchandiseView: function() {
return "curators-choice";
}
}
}).state('wines.stillAvailable', {
url: "/still-available",
templateUrl: 'partials/products/index',
controller: 'cwProductsController',
resolve: {
merchandiseView: function() {
return "still-available";
}
}
});
在这里,即使访问 wine / still-available ,它仍然会继续返回“特色”,我希望商品视图“仍然可用”。
这是我的控制者:
angular.module('clubwApp').controller('cwProductsController', [
'$scope', 'cwProduct', '$stateParams', 'merchandiseView', function($scope, cwProduct, $stateParams, merchandiseView) {
console.log(merchandiseView);
$scope.wines = cwProduct.available();
return $scope.merchandiseView = angular.copy(merchandiseView);
}
]);
有没有办法,我怎么能覆盖这个?
答案 0 :(得分:2)
data
州属性,而不是resolve
。$state.current.data
注射剂中读取$state
。答案 1 :(得分:0)
这显然是一个问题(直到0.2.15)。
这是一个解决这个问题的hacky解决方案:
http://plnkr.co/edit/j1wCThlv1uczlX7d5cdg?p=preview
resolve: {test: {this.data.someObject}}