0
我正在寻找一种正确的方式来处理可以通过不同的资源URL获取的数据类型。请参阅下面的代码示例:具有不同资源URL的相同数据类型(AngularJS)
storeServices.factory('Booklist', ['$resource',
function($resource){
return $resource('http://some.domain.com/api/stores/:storeId/booklists/',
{}, {
query: {method:'GET', params:{storeId:'@storeId'}, isArray:true}
});
},
]);
但是另外还有另一个API用于获取书籍列表,而无需指定storeId。例如:
http://some.domain.com/api/booklists/
我应该使用不同的名称创建不同的工厂还是有更好的/正确的方法?在此先感谢任何回复。
感谢快速的回应。在你的代码中,还有一个问题应该是“params:{storeId:'@storeId'}”还包括level1:'@ level1'? –
这不是必须的,因为'level1'不是你会在'booklist'对象内找到的东西。 – Stewie
谢谢。我对ng还不熟悉,请耐心等待。我的印象是资源内的参数,例如:../:level1 /:storeId/...从参数中获取它们的值:{storeId:'@storeId',...}。现在我想我实际上不明白它是如何工作的。那么是不是params:{}应该有属于返回对象的属性? –