我有一些对URL的ajax请求,它们非常相似,但是应该在不同点响应不同。因此,我没有在需要时编写新的ajax调用,而是尝试将ajax调用作为具有参数的函数重用:
function createAjaxObj(type,name,id,successFunc){
var config = {
url: MY_URL,
type: type,
data: {
name : name,
id : id,
},
headers: { "X-CSRFToken": returnCsrfToken(); },
success: successFunc,
error: function(xhr,ajaxOptions, thrownError) { console.log('error=',xhr);},
};
$.ajax(config);
}
所以现在,我打算每次需要时都调用此函数:
var myFunc = function(context){console.log(context)}
createAjaxObj("GET","MyName",58,myFunc)
我想知道这是否是个好主意或惯例,还是有更简单的方法来实现?
最佳答案
我会以无极的方式做到这一点:
function myAjax(type, name, id) {
return $.ajax({
url: MY_URL,
type: type,
data: {
name : name,
id : id,
},
headers: { "X-CSRFToken": returnCsrfToken(); })
})
.fail(function(){
console.log('error');
});
}
var myFunc = function(context){ console.log(context); };
myAjax("GET", "MyName", 58).then(myFunc);
关于javascript - 重用相同的AJAX调用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47105927/