微信小程序 封装请求api

封装请求地址 https.js

js 复制代码
 let baseUrl='https://XX.XXX.com/index.php/'; //自己得服务器地址
 export {
    baseUrl
  }

结构目录

封装 request.js

js 复制代码
import { baseUrl } from './https.js'
 
module.exports = {
  request : function(url, methodType, data){
    let fullUrl = `${baseUrl}${url}`
    // let token = wx.getStorageSync('token') ? wx.getStorageSync('token')  : ''
    //(wx.showLoading)显示 loading 提示框。需主动调用 wx.hideLoading 才能关闭提示框
    wx.showLoading({ title: "数据请求中"  });
    return new Promise((resolve,reject)=>{
      wx.request({
        url: fullUrl,
        method:methodType,
        data:data,
        header: {
          'content-type': 'application/json', // 默认值
          // 'x-api-key': token,
        },
        success(res){
            resolve(res)
        //   if (res.data.status == 200) { //根据自己返回数据状态进行更改
        //     resolve(res.data)
        //     wx.hideLoading()
        //   }else{
          //手动关闭loading提示框
            wx.hideLoading()
        //     wx.showToast({
        //       title: res.data.msg,
        //       icon:'none'
        //     })
        //     reject(res.data.message)
        //   }
        },
        fail(){
          wx.showToast({
            title: '接口请求错误',
            icon:'none'
          })
          reject('接口请求错误')
        }
      })
    })
  }
}

自己的js文件构造

js 复制代码
import { request } from './request'
 
module.exports = {
  // 获取采购list
  getPurchaseList: (data) => request('api/Api/list', 'POST', data),
}

如何调用

js 复制代码
const api = require('../../../api/purchase'); // 头部引入


  getPurchaseList(){
    var that = this;
    let data ={
     "openId": that.data.userInfo.app_openid,
     "token": that.data.userInfo.login_token
    };
    api.getPurchaseList(data).then((res) => {
			    if (res.data.status == 1) {
			                    that.setData({
			            goodsTypes: res.data
			        })
                } else {
                    app.myShowToast(res.data.msg);
                }
       
    })
  },
相关推荐
黑马程序员毕设12 小时前
基于Java的医院药品管理系统的优化设计与实现
java·开发语言·spring boot·小程序·架构·课程设计·毕设
数字游民952716 小时前
史诗级更新:微信小程序支持个人主体接入虚拟支付
ai·微信小程序·小程序·opc·数字游民9527
smartpi_ai17 小时前
语音模块与主控 MCU 串口对接实战:协议设计六要点,联调少走一半弯路
人工智能·小程序·语音识别
禾高网络17 小时前
养老系统开发:背景、架构与养老行业展望
java·大数据·人工智能·小程序·架构
lhldsg20 小时前
相册印刷实战指南:从设计规范到系统落地全流程解析
java·小程序·架构·设计规范
汤姆yu21 小时前
基于微信小程序的晚托机构管理系统
微信小程序·小程序·晚托
博、、21 小时前
酒馆预约系统开发实战:从需求分析到上线部署指南
小程序·需求分析
zww894911121 小时前
相册印刷项目实战指南:从设计到成品的完整技术流程
java·小程序·eclipse
2501_915918411 天前
Flutter项目配置iOS混淆的详细步骤与工具推荐
android·flutter·ios·小程序·uni-app·cocoa·iphone
这是程序猿1 天前
高校宿舍信息管理系统小程序
java·小程序·毕业设计