为了减少代码的冗余,决定抽离出请求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); }) }
测试通过!
以上这篇基于Vue的ajax公共方法(详解)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。