小程序使用promise同步处理异步请求
描述
小程序ES6版本的JS如果勾选了ES6转ES5选项则不能使用async做同步处理,但是还是可以利用es6的promise函数
JS代码
requestPro: function (url, options, headerParam) {
//options请求头参数配置 url是请求路径,headerParam是请求头参数
// options:{
// method:'post,get,..'//请求的方法是 post get 等等
// data:{....} //请求参数体
// }
return new Promise((resolve, reject) => {//返回ES6 promise 对象 用于做同步处理
let headers = Object.assign({}, headerParam, {
'Content-Type': 'application/json',
})
wx.request({
url: getApp().globalData.url + url,//这里用本地的url 实际根据需求改变请求地址
method: options.method,
data: options.method === 'GET' ? options.data : JSON.stringify(options.data),
header: headers,
success(request) {
// if (request.data.