我是AngularJS的新手,想要复制/配置以下两个URI /路径:
reports/search/findBySomeText?keyword=hello&filter=list
reports?filter=list
$resource
中的。到目前为止,我已经在下面提出,但不确定它是否正确:
var Report = $resource('reports/:search/:findBySomeText/:id', {
id: '@id'
}, {
query: {
method: 'GET',
isArray: false,
search : '@search',
findBySomeText: '@findBySomeText',
params: {
filter: 'list',
keyword: '@keyword'
}
},
generate: {
method: 'POST',
params: {
generate: true
}
}
});
所以这里有人可以纠正/或指导我如何实现这种行为!
NOTE
- 如果可能的话,我希望将基本网址保留为api/reports/:id
并添加其他uri行为以改变它们!
非常感谢!!
答案 0 :(得分:1)
这可能适合你。
$resource('api/reports/findBySomeText?:keyword&:filter', { keyword: '@keyword', filter: '@filter' }).get({ keyword: 'hello', filter: 'list' });
$resource('api/reports/?:filter', { filter: '@filter' }).post({ filter: 'list' });
如果过滤 - > List实际上是一个过滤器列表,你可以在你的url中连接它们,例如' filter = item1& filter = item2& filter = item3'获得一个过滤器列表,如[" item1"," item2"," item3"]
如果这不是您正在寻找的内容,请告诉我。我不得不做几个猜测。