【问题标题】:Angular ngResource array path variableAngular ngResource 数组路径变量
【发布时间】:2017-05-05 23:54:23
【问题描述】:

我在使用 Angular 的资源工厂时遇到了问题。我有路径变量 id 和 REST API 在相同的 url 上接受也称为“id”的查询参数。让我们用一些例子来描述这个问题:

资源网址:"/person/:id"

REST API 也接受查询参数 id 作为过滤器:"/person?id=5,7,11""/person?id=5&id=7&id=11"

$resource("/person/:id", {id: [5, 7, 11]})

这会产生无效的 url "/person/5,7,11"。我错过了什么?我预计不能将数组类型分配为路径变量。相反,它应该自动转换为查询参数(?id=5&id=7&id=11)。有谁知道如何覆盖这种行为?顺便提一句。我无法更改姓名 ID。谢谢你的建议。。

【问题讨论】:

  • 删除 /:id 我猜它应该可以工作

标签: javascript angularjs ngresource


【解决方案1】:

试试

$resource('/person/', {'id':[5, 7, 11]}

或者,或者:

$resource("/person/?id=:myparams", {myparams: [5, 7, 11]})

【讨论】:

  • 我需要与路径变量 id 组合。每个对象(在本例中为人)都由具有“/object/:id”形式的唯一 api 路径的工厂表示。因此,在 10 种情况下更改 url 或 vars/params 的形式对我来说不是解决方案。我正在寻找通用方式..但是谢谢
  • 编辑。对不起。我没有第一次看到它。您的第二个提示可能是我想要的..稍加修改 $resource("/person/:id?id=:myparams", {myparams: [5, 7, 11]})
猜你喜欢
  • 2018-10-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-11-25
  • 1970-01-01
  • 2017-01-12
  • 1970-01-01
  • 2021-08-12
相关资源
最近更新 更多