前言
Promise 是一个 ECMAScript 6 提供的类,目的是更加优雅地书写复杂的异步任务。封装promise方式请求数据,防止当请求过多时出现回调地狱。
1.构造promise方法
代码如下(示例):
new Promise(function (resolve, reject) { // 要做的事情... });
2.封装微信小程序promise方法
export const request=(params)=>{
wx.showLoading({
title: '正在加载...',
mask:true
});
//公共url
const baseUrl = "请求接口URL";
return new Promise((resolve,reject)=>{
wx.request({
...params,
url:baseUrl+params.url,
method:"get"||"post",
data:{},
success:(res)=>{
if(res.data.code == 200){
resolve(res)
}
else{
resolve(res)
}
},
fail:(err)=>{
reject(err);
},
complete:()=>{
ajaxTimes--;
if(ajaxTimes===0){
wx.hideLoading()
}
}
})
})
}