gpt4 book ai didi

angularjs - ngResource 解析嵌套资源

转载 作者:行者123 更新时间:2023-12-03 07:55:30 26 4
gpt4 key购买 nike

有哪些选项可以解析 ngResource 响应中的嵌套资源?

有一些关于在 ngResource 中解析嵌套资源的端点的相关问题,但这个问题是关于 REST 响应何时包含嵌套在正在查询的集合中的第二个资源,尤其是 1 对 1 映射,你不会有例如pets/<id>/owner作为自己的资源。

假设有两个资源,PetsOwners :

获取/宠物:

[{
name: 'spark',
type: 'dog',
owner: '/owners/3/' # alternatively just '3' or the full object.
}]

作为开发者,有时候想查询 Owner资源整体,有时候想查询 Pet资源,然后我自动想要解决 owner属性到资源实例中。

这是我目前的解决方案:
.factory('Pet', function ($resource, Owner) {
var Pet = $resource('/pets/:id', {id: '@id'});

Pet.prototype.getOwner = function () {
return new Owner(this.owner); // or Owner.get({id: this.owner})
}

return Pet;
})

这里的问题很多。诚信是其中之一。我相信,这种实现允许同一资源的多个实例。然后是实用性。您还可以跟踪其他属性( ownergetOwner() ,而不仅仅是 owner ;如果您希望能够保存模型,则可能是 setOwner)。

可以在 transformResponse 上构建替代解决方案,但将其包含在每个具有嵌套映射的资源中感觉像是一种黑客攻击。

最佳答案

我相信这就是 Martin Gontovnikas 创建 Restangular 的确切原因。他不喜欢在主要的 Angular 框架中处理嵌套的 $resources。我认为他的 Retangular 解决方案非常适合您的需求。他的代码在 GitHub here他在 youtube 上有一个不错的介绍视频 here .

一探究竟。我想你会发现它完全符合你的要求。

关于angularjs - ngResource 解析嵌套资源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19406442/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com