先安装axios
npm install --save axios
/*
* ajax请求函数
* 返回值:promise对象(异步返回的数据是response.data)
*/
import axios from 'axios'
export default function ajax(url,data={},type='get'){
return new Promise(function(resolve,reject){
//执行ajax异步请求,成功了调用resolve(),失败了调用reject()
let promise
if(type === 'GET'){
//准备url query参数数据
let dataStr = '' //数据拼接字符串
Object.keys(data).forEach(key => {
dataStr += key + '=' + data[key] + '&'
})
if(dataStr !== ''){
dataStr = dataStr.substring(0,dataStr.lastIndexOf('&'))
url = url + '?' + dataStr
}
//发送get请求
promise = axios.get(url)
}else{
//发送post请求
promise = axios.post(url,data)
}
promise.then(function(response){
//成功了调用resolve()
resolve(response.data)
}).catch(function(error){
//失败了调用reject()
reject(error)
})
})
return promise
}