美文网首页
封装wx小程序的ajax

封装wx小程序的ajax

作者: sorry510 | 来源:发表于2019-12-31 15:24 被阅读0次

    改造wx的ajax为promise,方便使用async和await语法

    function request({url, data=null, dataType='json', method='GET'} = {}) {
      return new Promise((resolve, reject) => {
        wx.request({
          url,
          data,
          dataType,
          method,
          header: {
            'content-type': 'application/json', // 默认值
            'openid': wx.getStorageSync('openid')
          },
          success({statusCode, data}) {
            if(statusCode >= 200 && statusCode < 300) {
              if(data.code === 0) {
                resolve(res)
              }else if(data.code === 403) {
                wx.reLaunch({ url: '/pages/error/index' })
              }else {
                wx.showToast({ title: '服务器内部错误', icon: 'none', mask: true })
                reject(res)
              }
            }else {
              wx.showToast({ title: '服务器外部错误或网络问题', icon: 'none', mask: true })
              reject(res)
            }
          },
          fail(res) {
            wx.showToast({ title: '网络问题,请重试', icon: 'none', mask: true })
            reject(res)
          }
        })
      })
    }
    
    

    相关文章

      网友评论

          本文标题:封装wx小程序的ajax

          本文链接:https://www.haomeiwen.com/subject/genboctx.html