0
我有這樣的狀態:角和UI路由器狀態孩子
}).state('sport', {
url: "/:sport",
templateUrl: '/app/sports/sport.tpl.html',
controller: 'SportController',
controllerAs: 'controller'
});
和控制器看起來是這樣的:
.controller('SportController', ['$stateParams', function ($stateParams) {
var self = this;
// Object to hold our parameter
self.slug = $stateParams.sport;
}]);
所以,我所要做的是這個參數傳遞給另一個州。我已經建立了這樣的:
.config(['$stateProvider', function ($stateProvider) {
// Set up our state(s)
$stateProvider.state('sport.designer', {
url: "/designer",
abstract: true,
templateUrl: '/app/designer/designer.tpl.html',
controller: 'DesignerController',
controllerAs: 'controller'
}).state('sport.designer.team', {
url: "",
templateUrl: '/app/designer/team.tpl.html'
}).state('sport.designer.kit', {
url: "/kit",
templateUrl: '/app/designer/kit.tpl.html'
}).state('sport.designer.design', {
url: "/design",
templateUrl: '/app/designer/design.tpl.html'
}).state('sport.designer.refine', {
url: "/refine",
templateUrl: '/app/designer/refine.tpl.html'
}).state('sport.designer.order', {
url: "/order",
templateUrl: '/app/designer/order.tpl.html'
});
}])
和控制器看起來是這樣的:
.controller('DesignerController', ['$stateParams', 'DesignerService', 'HttpHandler', 'Api', function ($stateParams, service, handler, api) {
var self = this;
var slug = $stateParams.sport; // Get our slug
console.log(slug);
}]);
因此,有幾個問題在這裏。
- 如果設置了這樣的鏈路:UI-SREF = 「sport.designer.team({運動:controller.slug})」那麼該視圖不會從運動狀態移動。
- 我使用.team的原因是因爲.designer是一個抽象的狀態和球隊的狀態是裝入
這裏是我的html的運動狀態的默認狀態:
<a ui-sref="sport.designer.team({ sport: controller.slug })">Test</a>
任何人都可以看到我做錯了什麼?
任何工作小提琴? – Shaxrillo 2015-04-01 18:06:25