Angularjs Angular$resource-使用已提取的数据重置

Angularjs Angular$resource-使用已提取的数据重置,angularjs,Angularjs,假设我有两个资源设置: var Item = $resource('/items'); var Thing = $resource('/items/:id/things', ...); 当我调用Item.query()时,它会返回如下结果: [ { "id": 123, "title": "foo", "things": [ { "id": 12, "name": "thing12" }, { "id": 13, "name": "thing

假设我有两个资源设置:

var Item = $resource('/items');
var Thing = $resource('/items/:id/things', ...);
当我调用
Item.query()
时,它会返回如下结果:

[
  {
    "id": 123,
    "title": "foo",
    "things": [
      { "id": 12, "name": "thing12" },
      { "id": 13, "name": "thing13" }
    ]
  },
  {
    "id": 456,
    "title": "bar",
    "things": [
      { "id": 18, "name": "thing18" },
      { "id": 19, "name": "thing19" }
    ]
  }
]
是否有一种方法可以提取
things
数组并将其提供给
Thing
资源?与主干网中解析响应和使用新数据重置集合的方式类似

我之所以要这样做,是因为当用户单击某个项目时,我不必再次查询它的
内容
,并且可以利用诸如删除、更新等资源方法


如果我做错了或者有更好的方法,请告诉我。干杯。

当你说“提取”时,你的意思是:
var query=Item.query();console.log(查询[0].things)?因为您有一个数组,所以可以循环,直到得到所需的对象,然后只使用
?还是我误解了你的问题?@TrazeK如果它不是
$resource
只是一个普通对象,我怎么做
query[0]。things[0]。update()
?我现在明白你的意思了。假设如下:
var Thing=$resource('/items/:id/things',{id:'@id',name:'@name'},{update':{method:'PUT'})
也许您可以循环遍历数组,隔离
.things
并为每个元素创建一个资源,如下所示:
var$thing=thing.get(things[i],function(){…$thing.update();…})希望这有帮助。