// 同时发送异步代码的次数 let ajaxTimes=0; export const request=(params)=>{ // 判断 url中是否带有 /my/ 请求的是私有的路径 带上header token let header={...params.header}; if(params.url.includes("/my/")){ // 拼接header 带上token header["Authorization"]=wx.getStorageSync("token"); } ajaxTimes++; // 显示加载中 效果 wx.showLoading({ title: "加载中", mask: true }); // 定义公共的url const baseUrl="https://api.zbztb.cn/api/public/v1"; return new Promise((resolve,reject)=>{ wx.request({ // 传入公共参数 ...params, header:header, //设置公共url url:baseUrl+params.url, // 成功返回 success:(result)=>{ resolve(result.data.message); }, //失败返回 fail:(err)=>{ reject(err); }, complete:()=>{ ajaxTimes--; if(ajaxTimes===0){ // 关闭正在等待的图标 wx.hideLoading(); } } }); }) }
小程序请求封装
使用:
import { request } from "../../request/index.js";