微信小程序promise接口封装

微信小程序(其他小程序),发送请求简单,但在一个成十上百个小程序文件的项目中,我们每一个小程序文件都要写 wx.request岂不是很麻烦?后期的维护也不方便,所以我们要对 wx.request进行进一步的封装


  • 第一步: 首先我们先创建一个http文件夹,然后里面再建三个小文件夹,分别为env.js, api.js, request.js。

 

  • 第二步: 编辑env.js文件内容:

    分开环境,方便切换环境。
module.exports = {
  // 开发环境
  dev: {
    baseUrl: 'https://127.0.0.0:8080'
  },
  // 测试环境
  test: {
    baseUrl: 'https://me.test.com'
  },
  // 生产环境
  prod: {
    baseUrl: 'https://me.prod.com'
  }
}
  • 第三步: 编辑request.js文件内容:

    开始封装。
const { baseUrl } = require('./env').dev

// 封装ajax
module.exports = {
  request: function(url, method = 'POST', data = {}, isLoading = true) {
    // 操作url
    var url = `${baseUrl}/${url}`
    // 操作data
    var data = data
    console.log(url,data)
    if (isLoading) wx.showLoading({ title: '加载中...' })
    return new Promise((resolve, reject)=>{
      wx.request({
        url: url,
        method: method,
        data: data,
        header: {
          'Content-type': 'application/x-www-form-urlencoded'
        },
        success(res) {
          if (res.statusCode === 200 && res.data.code === 0) {
            resolve(res.data)
          } else {
            wx.showToast({
              title: '接口有问题',
              icon: 'none'
            })
            reject(res.data)
          }
        },
        fail() {
          wx.showToast({
            title: '接口有问题',
            icon: 'none'
          })
          reject(res.data)
        }
      })
    })
  }
}
  • 第四步: 编辑api.js文件内容:

    统一放接口,方便修改和整理。 可以创建多个api文件,如:api1.js、api2.js、api3.js。

const { request } = require('./request')

module.exports = {
  // 获取列表
  getList:(d)=>request('shop/list', 'POST', {d}, true),
  // 获取详情
  getDetails:(d)=>request('shop/details', 'POST', {d}, true)
}
  • 第五步: 引入到页面:

//index.js
const { getList, getDetails } = require('../../http/api')


//......
//......


onLoad: function() {
  let data = {
    code: 1,
    page: 1,
    pageSize: 10,
  }
  getList(data).then((res)=>{
    console.log(res)
  })
}

 

 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值