gpt4 book ai didi

javascript - Angular $resource 中的自定义实例方法

转载 作者:行者123 更新时间:2023-11-28 01:36:32 25 4
gpt4 key购买 nike

AngularJS 的所有操作 $resource添加为$customAction资源的方法,以便我可以将它们作为资源实例的方法调用,例如:

var User = $resource('/user/:userId', {userId:'@id'});
User.get({userId:123}, function(user) {
user.abc = true;
user.$save();
});

$savesave操作并可以在 user 上调用实例。

我现在定义了以下自定义操作,导致 $attributes user 的每个实例上的方法:

var User = $resource('/user/:userId', {userId:'@id'}, {
attributes: { method: 'GET', url: '/user/:userId/attributes', isArray: true }
});

如果我现在尝试调用此方法,则会收到错误 Object #<Resource> has no method 'push' :

User.get({userId:123}, function(user) {
var attrs = user.$attributes(); // error
// ...
});

我对自定义操作的概念理解错误了吗?

最佳答案

看来你应该使用params而不是url

var User = $resource('/user/:userId/:customAction', {userId:'@id'}, {
attributes: { method: 'GET', params: { userId:'@id', customAction: 'attributes'}, isArray: true }
});

关于javascript - Angular $resource 中的自定义实例方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21477529/

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