我正在尝试通过 Controller 将 ui-router 的 $stateParams 传递给 $httpd 工厂服务。但我对如何实现同样的目标一无所知。 $http 工厂服务的作用是根据 cid 参数获取动态数据。如何将此路由参数传递给工厂服务中的后端脚本。
这是我的代码片段。
.state('category',{url:'/category/:cid',templateUrl:'views/category.html',controller:'CategoryCtrl'})
myapp.factory('catService', function($http) {
return {
getCategory: function(callback) {
$http.post('categorydetail.php').success(callback);
}
}
});
myapp.controller('CategoryCtrl', function($scope, catService) {
catService.getCategory(function(data,status) {
$scope.result = data;
});
});
非常感谢您的帮助。谢谢。
最佳答案
.state('category', {
url:'/category/:cid',
templateUrl:'views/category.html',
controller:'CategoryCtrl'
}
)
myapp.factory('catService', function($http) {
return {
getCategory: function(cid, callback) {
$http.post('categorydetail.php?cid=' + cid).success(callback);
}
}
});
myapp.controller('CategoryCtrl', function($scope, $stateParams, catService) {
catService.getCategory($stateParams.cid, function(data,status) {
$scope.result = data;
});
});
关于angularjs - 将 ui-router $stateParams 传递给 $http 工厂服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22497866/