问题标签 [angular-resource]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
angularjs - $resource 中删除和删除方法的区别?
delete
和方法有什么区别remove
?它们都使用DELETE
HTTP的方法。我找不到任何合理的信息。
angularjs - AngularJS:通过带有数组类型参数(复选框、多选等)的 $resource 发送请求
当我的 GET 参数中有一组复选框(client_status)时,我在尝试使用 AngularJS 中的 $resource 库发送正确序列化的 GET 请求时遇到问题。
这是我现在在控制器中的代码:
以上将发送以下 GET 请求:
但是,据我了解,以上似乎不是正确的格式。有人可以在这里指导我吗?以下是我的期望:
非常感谢您的帮助。
托马斯
angularjs - $resource 更新方法行为异常
对于特定的 $resource,读取/创建/删除都可以正常工作,但是编辑并不顺利。
在我的应用程序配置中,我有:
这对 POST/PUT 都适用,也许值得一提。
我的 $resource 定义如下所示:
然后在 ProjectEditCtrl 中:
现在,当我实际运行时,$scope.projectDo()
我会收到一串请求,而不仅仅是 PUT,显示在此屏幕截图中:
为什么除了 之外还有其他调用PUT project/1
?请注意,正在发生 DELETE 500,因为:id
路径中没有。
更新:
只是为了好玩,我决定将整个 $resource 定义更改为以下内容:
使用此定义进行测试确认添加/删除控制器尊重它,并尝试将 GET 用于Project.delete
和Project.save
。
现在跑步Project.update
似乎减少了奇怪的呼叫。和以前一样:
- 发布 x1
- 得到 x2
- 删除 x2
- 放 x2
在强制除update()
GET 之外的所有内容之后,我现在看到:
- 没有 POST
- 得到 x2
- 删除x1
- 放 x2
仍然很困惑,但可能有用的信息。
更新 2:
决定尝试放弃 PUT 方法,因此Project.update()
改用 POST,但是类似的问题出现在大量不受欢迎的请求中。
另请注意,所有这些请求都在同一时间点触发,这意味着它们都不是顺序的或对另一个请求的完成做出反应。
更新 3:
尝试使用不同的词,而不是update
查看我是否以某种方式践踏现有代码,但Project.whaaaat()
效果相同。
更新 4:
好吧,现在离真相更近了一点。尝试了未定义的方法,并且发生了相同的行为。我想当我调用一个无法识别的方法时,我只是触发了每个定义的方法?
更新 5:
看起来问题是由这两行的组合引起的:
$.param
在它返回的对象上运行时,Project.get
它会调用所有Project
方法,因为它们实际上是属性。
projectForm
在属性上运行一个循环,typeof
显示:
name 是一个字符串 id 是一个数字 $get 是一个函数 $save 是一个函数 $query 是一个函数 $remove 是一个函数 $delete 是一个函数 $update 是一个函数
有没有办法在对象上运行 $.param 并防止不可序列化属性的序列化?
javascript - Angular JS 从 1.1.0 升级到 1.1.1 后失败
当我升级 ng-repeat 需要非常长的时间来加载并尝试显示更多内容框而没有 $resource 提供的内容。
我已将问题缩小到 1.1.0 和 1.1.1 之间的更新。我查看了更新日志,但没有任何内容显示我是罪魁祸首,但它一定在里面。
变更日志 => https://github.com/angular/angular.js/blob/master/CHANGELOG.md#111-pathological-kerning-2012-11-26
此应用程序的存储库 => https://github.com/brianpetro/resume
目前我的角度看起来像:
这发生在使用 ng-repeat 的多个视图上:
这是 AngularJS 版本 1.1.0:
这是 AngularJS 版本 1.1.1:
angularjs - 角度资源中的错误回调,例如
我在 django 中使用 ng-resource 时遇到了麻烦,因为它总是删除尾部斜杠。因此,我通过创建自己的资源来遵循https://stackoverflow.com/users/192810/misko-hevery指南https://stackoverflow.com/a/11850027 。我想问一下我的代码是否是实现错误回调函数的正确方法?IE:我的服务器响应如下 {err : "that book already exists!"}
像这样修改create方法可以吗?
我这样修改控制器
angularjs - 使用 $resource 保存后如何从 $scope ng-repeat 更新项目
我有一个显示项目列表的角度视图,每个项目都有两个按钮将每个活动设置为暂停/开始。我知道这是 angular $resource 的一个非常基本的问题,但是我无法在成功 $start 时更新项目(在成功回调中,我无法访问与该项目相关的任何内容)。
在我的观点中:
angularjs - 在 $resource 上发送请求正文
我查看了 $resource 的Angular API,但没有找到将 a 发送Request Body
到 RESTful 服务的方法。
我知道使用 $http 方法可以做到这一点,就像这里一样,那么,是否也可以使用$resource
?
显然这是$resource
.
action - {string} - 动作的名称。此名称将成为您的资源对象上的方法的名称。
方法- {string} - HTTP 请求方法。有效方法为:GET、POST、PUT、DELETE 和 JSONP
params – {object=} – 此操作的可选预绑定参数集。
isArray – {boolean=} – 如果为 true,则此操作的返回对象是一个数组,请参阅返回部分。
目前我没有找到任何方法来发送包含 JSON 对象的请求负载。
angularjs - 在angularjs中将资源包装在单个服务中?
最近我发现了一个TokenHandler,它允许我在每个 rest api 请求上发送一个令牌。您可以在此处找到详细说明:http: //nils-blum-oeste.net/angularjs-send-auth-token-with-every--request/#.UXtYlbVTDIX
我在我的项目中实现此处理程序时遇到问题。我的项目正在处理一些资源,让我谈谈Post和Author。我目前正在做的是:
我将它包装在我的主应用程序模块中
我的问题是,我在哪里设置 TokenHandler?它必须分配给一个模块,对吗?我会将它分配给例如 PostService,但结果我将无法在 AuthorService 中使用它?
因此,我还有另一个问题。是否可以将多个资源包装在一项服务中,例如:
angularjs - 使用 $resource 承诺模式缓存数据
假设我的服务从 $resource get 返回一个承诺,我想知道这是否是缓存数据的正确方法。在这个例子中,在点击返回箭头并返回搜索结果后,我不想再次查询网络服务器,因为我已经有了它们。这是处理这种情况的正确模式吗?下面的示例是查询 Flixter (Rotten Tomatoes) Api。
精简代码:
控制器:
服务:
我无法提供一个工作示例,因为它会暴露我的 API 密钥。
javascript - 使用资源填充 Angularjs 中的范围属性
免责声明我来自淘汰赛,所以我在改变如何做某些事情的思路时遇到了一些麻烦,这就是其中之一......
我有<input>
一个用户可以在其中输入电影标题,并且应该显示电影列表。电影集合是通过调用从我的 rest api 提供的http://www.example.com/api/movies?title=matrix
。该 api 包装在一个角度资源模块中。
我认为这$scope.movies = Movie.query({ title: $scope.searchValue });
会在任何时候更改时自动更新,$scope.searchValue
但它似乎并没有那样工作。
只是为了完整起见,这里是我对这个特定控制器的标记......
$scope.movies
用户在 中输入值后填充搜索结果的正确方法是<input>
什么?