2020-10-12微信小程序 接口請求統(tǒng)一配置

  1. 文件格式


  2. main.js 文件(統(tǒng)一配置接口導(dǎo)出,各個頁面按需導(dǎo)入引用)
// 小程序開發(fā)api接口統(tǒng)一配置
// 如果你的域名是: https://www.baidu.com/cn 那么這里只要填寫 cn
let subDomain = '/cn'  // 子域名,沒有就等于''
const API_BASE_URL = 'https://www.baidu.com'  // 主域名
 
 
const request = (url, method, data) => {
  let _url = API_BASE_URL + subDomain  + url
  return new Promise((resolve, reject) => {
    wx.request({
      url: _url,
      method: method,
      data: data,
      header: {
        'Content-Type': 'application/json'
      },
      success(request) {
        resolve(request.data)
      },
      fail(error) {
        reject(error)
      },
      complete(aaa) {
        // 加載完成
      }
    })
  })
}
 
/**
 * 小程序的promise沒有finally方法,自己擴展下
 */
Promise.prototype.finally = function (callback) {
  var Promise = this.constructor;
  return this.then(
    function (value) {
      Promise.resolve(callback()).then(
        function () {
          return value;
        }
      );
    },
    function (reason) {
      Promise.resolve(callback()).then(
        function () {
          throw reason;
        }
      );
    }
  );
}
 
module.exports = {
  request,
  // 首頁列表接口
  getList: data => request('/goods/list','get', data),
  // 詳情接口
  getDetail: (data) => request('/goods/detail','get', data),
 
}
  1. 導(dǎo)入使用


index.js 導(dǎo)入使用

const WXAPI = require('../../wxapi/main')
const app = getApp()
 
Page({
  data: {
    list: [],
    inputValue:'',
    pageNumber: 1,
    pageSize: 10,
  },
   // 加載頁面
  onLoad: function () { 
   let that = this;
    wx.showLoading({
      "mask": true,
      "title": "加載中..."
    });                  
      WXAPI.getList({  // 接口調(diào)用獲取列表
      keyword: that.data.inputValue,
      pageNumber: that.data.pageNumber,
      pageSize: that.data.pageSize
    }).then(function (res) {
      wx.hideLoading()
      if (res.code == 200) {
        that.setData({
          list: res.data.list,
        });
      }
    }).catch(function (e) {
      console.log(e)
         wx.showToast({
           title: e.msg,
           icon: 'none'
         })
    }) 
  },
  // 分享
  onShareAppMessage: function () {
 
  }
})
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容