【背景】
最近在搞小程序的项目,由于同个页面发起太多嵌套的数据请求,导致阅读自己的代码都很困难,就重新用Promise封装了数据请求方式,该方法可自行判断是否需要携带token
【阅读前提】
需要熟悉promise的原理、js任务队列执行顺序、微信数据请求方式wx.request、ES6的export和import ,可先看下最底下的文献参考。详细注释放在代码中,自行理解 ~
【创建配置文件】
(1) api/config.js
//设置请求头前缀BasicUrl
const BasicUrl = "http://example:bittersea"
//不需要token的数据请求
const Request = (url, method, data = {}) => {
// 传入请求参数,返回一个promise对象,参数是一个携带resolve,reject回调函数的的立即执行函数
return new Promise((resolve, reject) => {
// 这里执行数据请求异步操作
wx.request({
url: BasicUrl + url,
method: method,
data: data,
header: {
'Content-Type': 'application/json'
},
success: (res) => {
// 成功回调:执行resolv