基于Vue的ajax公共方法(详解)
为了减少代码的冗余,决定抽离出请求ajax的公共方法,供同事们使用。
我使用了ES6语法,编写了这个方法。
/**
* @param type 请求类型,分为POST/GET
* @param url 请求url
* @param contentType
* @param headers
* @param data
* @returns {Promise<any>}
*/
ajaxData: function (type, url, contentType, headers, data) {
return new Promise(function(resolve) {
$.ajax({
type: type,
url: url,
data: data,
timeout: 30000, //超时时间:10秒
headers: headers,
success: function(data) {
resolve(data);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
resolve(XMLHttpRequest);
}
});
});
}通过回调函数的方式返回请求结果。
测试代码如下:
getAjaxDataMethod: function () {
const url = "";
const type = "POST";
const contentType = "application/json";
const headers = {};
const data = {};
Api.ajaxData(type, url, contentType, headers, data).then(function (res) {
console.log(res);
}).catch(function (err) {
console.log(err);
})
}测试通过!
相关推荐
时光如瑾雨微凉 2020-07-19
ppsurcao 2020-06-14
chongxiaocheng 2020-08-16
kentrl 2020-11-10
结束数据方法的参数,该如何定义?-- 集合为自定义实体类中的结合属性,有几个实体类,改变下标就行了。<input id="add" type="button" value="新增visitor&quo
ajaxyan 2020-11-09
zndy0 2020-11-03
学留痕 2020-09-20
learningever 2020-09-19
ajaxhe 2020-08-16
lyqdanang 2020-08-16
curiousL 2020-08-03
坚持着执着 2020-07-16
jiaguoquan00 2020-07-07
李永毅 2020-07-05