调用jquery ajax-.fail vs.:error

我应该使用哪一个?

是否有任何理由使用一种而不是另一种?

错误处理更好吗?

$.ajax({

url: url,

data: { start: start, end: end }

}).done(function(data, textStatus, jqXHR) {

$('#myElement').append(data);

}).fail(function() {

// report error

});

要么

$.ajax({

url: url,

data: { start: start, end: end },

success: function(data, textStatus, jqXHR) {

$('#myElement').append(data);

},

error: function(jqXHR, textStatus, errorThrown) {

// report error

}

});

回答:

这两个选项是等效的。

但是,promise风格的接口(.fail().done())使您可以将创建请求的代码与处理响应的代码分开。

您可以编写一个发送AJAX请求并返回jqXHR对象的函数,然后在其他地方调用该函数并添加一个处理程序。

当与该.pipe()功能结合使用时,promise风格的接口还可以在进行多个AJAX调用时帮助减少嵌套:

$.ajax(...)

.pipe(function() {

return $.ajax(...);

})

.pipe(function() {

return $.ajax(...);

})

.pipe(function() {

return $.ajax(...);

});

以上是 调用jquery ajax-.fail vs.:error 的全部内容, 来源链接: utcz.com/qa/397794.html

回到顶部