Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/377.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Backbone.js“error”事件:我如何知道哪个方法(获取、保存、删除)触发了它?_Javascript_Jquery_Backbone.js - Fatal编程技术网

Javascript Backbone.js“error”事件:我如何知道哪个方法(获取、保存、删除)触发了它?

Javascript Backbone.js“error”事件:我如何知道哪个方法(获取、保存、删除)触发了它?,javascript,jquery,backbone.js,Javascript,Jquery,Backbone.js,只要响应不是200状态代码,主干同步就会触发模型/集合上的错误事件。为了实现默认的错误处理机制,我正在侦听视图中的错误事件。这是可行的,但我希望能够区分保存、删除和检索获取的错误 简而言之,这就是我想要的: var MyView = Backbone.View.extend({ initialize: function(options){ this.listenTo(this.model, 'error', this.errorHandler); }, errorHandle

只要响应不是200状态代码,主干同步就会触发模型/集合上的错误事件。为了实现默认的错误处理机制,我正在侦听视图中的错误事件。这是可行的,但我希望能够区分保存、删除和检索获取的错误

简而言之,这就是我想要的:

var MyView = Backbone.View.extend({
  initialize: function(options){
    this.listenTo(this.model, 'error', this.errorHandler);
  },
  errorHandler: function(model, xhr, options){
    // logic would depend on whether the event was triggered by fetch, 
    // save, or delete
    // How can I tell how the event was triggered? 
  }  
});
主干是否为我提供了这样做的方法?jqXHR对象是否存在?在这里寻找选择

我知道我可以,也有人会说,应该在选项中使用错误回调来获取等,但我不想修改大量现有代码来创建默认行为

我是否需要覆盖基本模型中的获取、保存和删除来命名事件的名称空间,或者是否已经内置了某些内容


感谢

主干网错误事件的回调有3个参数:model、xhr和按此顺序排列的选项

options对象引用用于触发失败请求的选项。因此,在它里面,您应该能够看到使用了什么HTTP方法,我认为ti称之为type?,状态码,甚至是它试图将请求发送到的URL。

至少在1.0.0中,选项是从调用传递到(例如)获取的。我只有success、error回调以及EmulateHTTP和EmulateJSON。它也有附加到选项的xhr对象,但这是回调的第二个参数。除非它隐藏在XHR的某个地方,否则我没有它