我想创建一个根据参数调用后端的服务。此代码不起作用,但我希望它显示我想要实现的目标:
myproject.factory('Item', function($resource) {
if (@id !== undefined)
return $resource('/resource/item/:id/item.json', {id: '@id'});
else if (@userid !== undefined)
return $resource('/resource/user/:userid/items.json', {userid: '@userid'});
});
基本上,第一个选项仅通过其 ID 返回一个项目,第二个选项通过用户 ID 返回多个项目。
然后我希望能够像这样调用该服务:
$scope.item = Item.get({id: id}, function() {...}
或者
$scope.items = Item.query({userid: userid}, function() {...}
实现这样的目标的最佳方法是什么?我是否需要为所有内容创建单独的服务?
谢谢!