1.如何使用Promise封装wx.request()

本文详细介绍了如何在微信小程序中使用Promise封装wx.request,包括创建http模块、管理接口地址、统一请求管理和使用示例。通过封装,简化了请求过程并提高代码复用性。

小程序使用promise封装request请求

首先在根目录下创建一个文件夹,如我用的是http,然后在这个文件夹下创建一个js文件。这个js文件中写入

//封装微信网络请求模块 promise----》 wx.request()
export default (url,data,method)=>{ // 导出一个函数 函数中的 url是请求接口地址 data 是发送的参数 method 是请求方式
  return new Promise((resolve,rejects)=>{ // 返回一个 promise
    wx.request({
      url, //请求地址
      data, // 请求时携带的参数
      method, // 请求方式
      success(res){  // 请求成功指定的函数
        resolve(res); // 请求成功执行成功的回调,执行的是 then
      },
      fail(err){     // 请求失败执行的函数
        rejects()     // 请求失败执行的回调,执行的是 catch
      },
    })
  })
}

然后在创建一个js文件,如request.js文件,这个文件专门用来存放我们的请求接口的地址。代码如下

//接口地址 集合
export default {
  home:'/xxx',  // 这里写请求地址,一般我们写一个项目,baseUrl 是固定不变的,这时我们可以把后面那些不同的链接地址放到这里。
  list:'/list'  // 如这是列表页面请求的数据,
}

创建完这2个js后,我们可以在写一个js文件统一管理我们的请求。

//封装请求方法
import http from './http';   // 引入我们封装好的 wx.request 
import api from './request'; // 引入我们的请求接口  相当于引入了一个对象 如 {home:'/xxx',list:'/list}

let baseUrl = "http://xxx.xxx.com";   // 这里写我们请求地址共同的链接 

export default (data,method)=>{ // 导出
  return http(baseUrl+api.home,data,method); // 返回执行的函数 baseUrl+api 字符串拼接,拼接成完整的地址,data用来传参数,method用来定义请求方式
}

最后在我们项目根目录下的app.js文件中引入这个js文件即可

// app.js
import http from './http/api' // 引入我们封装的 wx.request
App({
  http  // 在这里挂载到属性上
})

然后哪个页面使用就在对应的js文件内引入

const app = new getApp() //引入我们的 app.js文件

   /** 生命周期函数--监听页面加载
   */
  onLoad: function () {
    app.http({},'get').then(res=>{  // 直接调用app中的方法即可 ,第一个参数可以向服务器传递参数,第二个参数是请求方式
      console.log(res);
    })  
  },

这样我们的封装就完成了

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值