【微信小程序遇到的坑】 es6 封装request请求

为了使代码更精简,便于理解和维护,使用 new Promise方法对request请求进行封装

new Promise(resolve, reject) 含有两个参数

resolve :成功时的调用

reject:失败时的调用

app.js中封装reeuqst请求

App({
  onLaunch: function(options) {
  },
  globalData: {
    localUrl: "https://www.baidu.com",
  },
  request(api, params, method) {
    return new Promise((resolve, reject) => {
      wx.request({
        url: this.globalData.localDoctorUrl + api,
        data: params,
        header: {
          'content-type': 'application/x-www-form-urlencoded',
          'csrf-csrf': 'csrf-csrf',
        },
        method: method ? method : 'get',
        success: (res) => {
          resolve(res)
        },
        fail: (err) => {
          wx.showToast({
            title: err,
            icon: 'none'
          });
          reject("请求失败")
        }
      })
    })
  },
})

在其他需要用到请求的页面直接引用

const app=getApp();


//request请求
app.request("接口地址","参数","post/get").then(res=>{
    //请求成功的处理
}).catch(err=>{
    //请求失败的处理
})

猜你喜欢

转载自blog.csdn.net/superKM/article/details/83654247