角度资源覆盖网址无效
这里的文档说:
url – {string} – action specific url override.
The url templating is supported just like for the resource-level urls.
我想用这个很好的功能,我试过这个:
angular.module("experience", ['ngResource'])
.factory('Experience', function ($resource, identity) {
return $resource("api/experiences/:id", {}, {
queryAll : {
method : 'GET',
url : 'api/companies/' + identity.id + '/experiences',
isArray : true
}
});
});
您看到我正在尝试覆盖queryAll方法的url。 但这不起作用,查询仍然会发送url api / experience。 这是真的支持或我做错了吗? 谢谢你的帮助。
我的项目中有一个非常类似的问题。 资源操作中无法覆盖url。 我使用的是Angular 1.2.0,它应该支持自1.1.4以来的功能。 所以我检查了Angular API参考,CHANGELOG,但没有运气。 然后我深入了解源代码并注意到重写url的逻辑不存在。 这是问题的根源。 我更新了Angular到1.2.0,但我忘了更新angular-resource.js
到相应的版本。
所以,长话短说: 检查angular-resource.js的版本
我不确定你是否无法访问url覆盖中的identity
属性,但你可以尝试如下所示:
return $resource("api/experiences/:id", {}, {
queryAll : {
method : 'GET',
url : 'api/companies/:id/experiences',
params : { id: identity.id },
isArray : true
}
});
该id: identity.id
告诉角度使用的id属性identity
,(如果存在的话)。
上一篇: angular resource overwrite url not working
下一篇: Having a fallback for a transparent background RGBA background in CSS