2014-12-05 49 views
1
$stateProvider.state('page2', { 
     url: '/page2/:topicId', 
     templateUrl: 'page2.html', 
     controller : 'page2Ctrl' 

}); 

app.controller('page2Ctrl', ['$scope', 'getContentService', function($scope,getContentService){ 
    getContentService.request().success(function(data){ 
     $scope.content = data; 
    }); 
}]); 

我想将topicId传递给page2Ctrl。我知道有一种方法是使用stateprovider中的resolve来传递它,但对于我来说这不是那么模块化。如何将topicId传递给page2Ctrl而不使用解析?将状态参数传递给状态提供者中的控制器设置

回答

1

添加$ stateParams作为注射

app.controller('page2Ctrl', ['$scope', '$stateParams', 'getContentService', 
        function($scope, $stateParams, getContentService){ 
    // you can now use $stateParams.topicID 
    getContentService.request().success(function(data){ 
     $scope.content = data; 
    }); 
}]); 
+0

什么不同BTW $ stateParams VS $ stateParam? – 2014-12-05 06:51:21

+0

我不能用'$ stateParam'找到代码示例,但我不确定它是否存在 – 2014-12-05 06:58:44

+0

感谢Simon的回答,$ stateParams为我工作:) – 2014-12-05 07:29:30

相关问题