当前位置: 首页 > 面试题库 >

如何在AngularJS中添加$ resource方法的回调

阮阳曦
2023-03-14
问题内容

常见的情况是,在用户更新/创建一些数据后,我们需要向用户显示错误/成功消息,我们如何在AngularJS中实现它?
我想添加回调,但是找不到解决方案。使用$ http.post()。success()。error()可以工作,但是我想知道是否可以使用更高级别的API $
resource来实现。
或者,我们应该编写指令还是使用$ watch()?
感谢您的帮助。


问题答案:

就像较低级别的 $ http* 服务一样,可以将 Resource 类的操作传递给成功和错误回调 *

来自文档

  • HTTP GET“类”操作:Resource.action([参数],[成功],[错误])
  • 非GET“类”操作:Resource.action([参数],postData,[成功],[错误])

非获取操作的前缀为$

所以你可以这样做

User.get({userId:123}, function(u, getResponseHeaders){
  // this is get's success callback
  u.abc = true;
  u.$save(function(u, putResponseHeaders) {
    // This is $save's success callback, invoke notification from here
  });
});

编辑:这是以前的矮人的另一个例子。get请求将失败,因为它请求不存在的json文件。错误回调将运行。

someResource.get(function(data){
    console.log('success, got data: ', data);       
}, function(err){
    alert('request failed');
});


 类似资料:
  • 问题内容: 有没有一种方法可以等待诺言,以便您可以从中获得实际结果并返回,而不是返回诺言本身?我在考虑类似于C#await关键字与Tasks一起工作的方式。 这是为什么我想拥有像canAccess()这样的方法的示例,该方法返回true或false而不是promise,以便可以在if语句中使用它。方法canAccess()将使用$ http或$ resource进行AJAX调用,然后以某种方式等待

  • 问题内容: 我正在做的事情非常精简,可以解决问题。 我有一个简单的。每当您单击一个元素时,它都会添加另一个元素。但是,需要先对其进行编译才能正确呈现。 我的研究使我走向了。但是所有示例都使用了一个复杂的结构,我真的不知道如何在这里应用它。 小提琴在这里:http : //jsfiddle.net/paulocoelho/fBjbP/1/ JS在这里: Josh David Miller的解决方案:

  • 本文向大家介绍AngularJS表格添加序号的方法,包括了AngularJS表格添加序号的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了AngularJS表格添加序号的方法。分享给大家供大家参考,具体如下: 1、问题背景 AngularJS表格需要序号,可以利用$index来作为序号 2、实现实例 3、实现结果 更多关于AngularJS相关内容感兴趣的读者可查看本站专题:《Angu

  • 问题内容: 我在加载内容时使用按钮微调器,当用户单击“搜索”按钮时,将加载内容,这时将更改为“搜索”,并且将显示微调器(此处按钮将被禁用)。加载后(已解决承诺),内容将恢复为“搜索”(此处将启用按钮)。 我尝试了以下代码,但始终显示微调器。 HTML: 剧本: 更新的小提琴: http : //jsfiddle.net/xc6nx235/18/ 问题答案: 您需要做的就是使用或指令。 ng-sho

  • 问题内容: 使用Angular,如何添加由我的应用程序更新哈希或浏览器从URL栏或后退/前进按钮更新URL时触发的手表? 问题答案: 接受函数作为第一个参数,因此您可以执行以下操作: 但我会建议使用的事件,如为缺省路由器: 或用于ui路由器

  • 问题内容: 在Java中,您可以: 您如何在Scala中做到这一点? 编辑/有用的链接: https://github.com/rbricks/itemized http://pedrorijo.com/blog/scala-enums/ 问题答案: