安装和使用
安装
npm install qs
使用
import Qs from 'qs'
Qs.parse();//将url解析成对象形式
Qs.stringify();//将对象序列化成url形式,以&进行拼接
ajax请求封装
const Ajax = async ({ url, type, data, ContentType='form', msg = '获取信息失败!' }) => {
let c = null
let headers={"Content-type": "application/x-www-form-urlencoded; charset=UTF-8"}
if(ContentType=='json'){
headers={"Content-type": "application/json; charset=UTF-8"}
}
if (type === 'post') {
if (!url.includes('uploadFile') && !url.includes('postFile') && ContentType!='json') {
data = Qs.stringify(data)
}
try {
c = await Axios.post(url, data ,{
headers,
})
} catch (error) {
// Message.error(msg)
c = error
// console.log(error, '123')
}
}
if (type === 'get') {
if (data) {
let dataArray = []
Object.keys(data).forEach(key =>
dataArray.push(`${key}=${data[key]}`)
)
if (url.search(/\?/) === -1) {
url += '?' + dataArray.join('&')
} else {
url += '&' + dataArray.join('&')
}
}
try {
c = await Axios.get(url)
} catch (error) {
// Message.error(msg)
c = error;
console.log(error)
}
}
return c
}
export default Ajax
Object.keys
// simple array
var arr = ['a', 'b', 'c'];
console.log(Object.keys(arr)); // console: ['0', '1', '2']
// array like object
var obj = { 0: 'a', 1: 'b', 2: 'c' };
console.log(Object.keys(obj)); // console: ['0', '1', '2']