这是在angularjs
中使用$ resource进行多次调用的唯一方法吗?var User = $resource('/user/:userId', {userId:'@id'});
User.get({userId:123}, function(user) {
user.abc = true;
});
或者我们可以做这样的事情 -
mainApp.factory('service', [ '$resource',
function($resource) {
var data = $resource('user', {
}, {
signUp : {
url : '/api/signup',
method : "POST"
},
message : {
url : '/api/messages',
params : {id : "@id"},
method : "GET"
},
});
return data;
}]);
并在控制器中
mainApp.controller('userController', ['$scope', 'service',
function($scope, service) {
$scope.messages = function() {
service.message({id: id}, function(userData) {
console.log(userData);
}
}
$scope.messages();
}]);
还是有更好的方法吗?
答案 0 :(得分:1)
我认为你可以这样做:
mainApp.factory('service', [ '$resource',
function($resource) {
var data = $resource('/api/:path', {
path: '@path'
}, {
signUp : {
params : {path: 'signup'},
method : "POST"
},
message : {
params : {path: 'messages'},
method : "GET"
},
});
return data;
}]);