axios接口封装
2024-09-01 21:44:21
axios封装
import JsonP from 'jsonp'
import axios from 'axios'
import { Modal } from 'antd'
export default class Axios {
static jsonp(options) {
return new Promise((resolve, reject) => {
JsonP(options.url, {
param: 'callback'
}, function (err, response) {
if (response.status == 'success') {
resolve(response);
} else {
reject(response.messsage);
}
})
})
} static ajax(options){
let loading;
if (options.data && options.data.isShowLoading !== false){
loading = document.getElementById('ajaxLoading');
loading.style.display = 'block';
}
let baseApi = 'https://www.xxxxxx.com/xx/5a7278e28d0c633b9c4adbd7/api';
return new Promise((resolve,reject)=>{
axios({
url:options.url,
method:'get',
baseURL:baseApi,
timeout:5000,
params: (options.data && options.data.params) || ''
}).then((response)=>{
if (options.data && options.data.isShowLoading !== false) {
loading = document.getElementById('ajaxLoading');
loading.style.display = 'none';
}
if (response.status == '200'){
let res = response.data;
if (res.code == '0'){
resolve(res);
}else{
Modal.info({
title:"提示",
content:res.msg
})
}
}else{
reject(response.data);
}
})
});
}
}
调用:
import axios from './../../axios/index' request =()=>{
axios.ajax({
url:'/table/list',
data:{
params:{
page:this.params.page
},
// isShowLoading:false
}
}).then((res)=>{
console.log("res1",res)
if(res.code == 0){
this.setState({
dataSource2:res.result
})
}
})
}
最新文章
- SQL SERVER 导出数据,数据与结构,结构
- 通过硬编码获取dubbo服务对象
- SQL server 专业词汇
- JQuery学习之操作DOM
- web双机热备添加心跳检测ip的时候填了网关导致外网ip不能上网
- iOS中—触摸事件详解及使用
- Html DOM 常用属性和方法
- Symfony没有安装依赖_PHP Fatal error: require(): Failed opening required
- js正则表达式中test,exec,match方法的区别说明
- css——letter spacing
- 【原创】Python第二章——字符串
- jasperreport queryString in
- JQuery实现轮播图及其原理
- hdu-1033(格式)
- PAT 1063 计算谱半径
- Ubuntu下设置开机后自动运行命令(转)
- flexbox父盒子align-items属性
- 【咸鱼教程】TextureMerger1.6.6 三:Bitmap Font的制作和使用
- go 接口
- handsontable 问题