71 lines
1.3 KiB
JavaScript
71 lines
1.3 KiB
JavaScript
class Ajax {
|
|
|
|
constructor() {
|
|
this.toast = new auiToast();
|
|
this.ajax = new XMLHttpRequest()
|
|
}
|
|
|
|
// { url: '请求地址', data: {} //请求参数 }
|
|
get (params) {
|
|
this.toast.loading({
|
|
title:"加载中",
|
|
duration:2000
|
|
});
|
|
return new Promise((resolve, reject) => {
|
|
$.ajax({
|
|
type: 'GET',
|
|
url: this.baseUrl() + params.url,
|
|
data: params.data,
|
|
success: (res) => {
|
|
resolve(this.statechange(res))
|
|
},
|
|
error: (err) => {
|
|
toast.fail({
|
|
title: err.message,
|
|
duration:2000
|
|
});
|
|
throw new Error(res.message)
|
|
}
|
|
})
|
|
})
|
|
}
|
|
|
|
|
|
post () {
|
|
this.open("POST", "http://127.0.0.1/index.php")
|
|
}
|
|
|
|
|
|
statechange (res) {
|
|
this.toast.hide()
|
|
switch (res.status) {
|
|
case 200:
|
|
return res.result
|
|
break;
|
|
|
|
case 404:
|
|
toast.fail({
|
|
title: res.message,
|
|
duration:2000
|
|
});
|
|
throw new Error(res.message)
|
|
break;
|
|
}
|
|
}
|
|
|
|
baseUrl() {
|
|
switch (config.stage) {
|
|
case "dev":
|
|
return config.devBaseUrl;
|
|
break;
|
|
|
|
case "test":
|
|
return config.testBaseUrl;
|
|
break;
|
|
|
|
case "prod":
|
|
return config.prodBaseUrl;
|
|
break;
|
|
}
|
|
}
|
|
} |