小程序封裝一個ajax


 

小程序中,我們一般習慣把提交接口請求的方法放在一個公共js里面。下面是一個簡單實現。

(1)我們把所有請求的地址都放在一個json里面

var postAddress = {
  "domin": "http://www.baidu.com",    //域名
  "getOpenId": "/index/getOpenId", //登錄獲取用戶信息
  "orderlist": "/business/orderlist",
  "orderdetail": "/business/orderdetail",
  "initOrder": "/order/init"
};

(2)封裝wx.request

function post(postName, paramData = {}, callback) {
  var data = {token: token};  //添加公共數據,比如token
  for (var key in paramData) {
    data[key] = paramData[key];
  }
  var reqUrl = postAddress ['domin'] + postAddress [postName];
  if (reqUrl) {
    wx.request({
      method: "POST",
      header: {
        "Content-Type": "application/x-www-form-urlencoded;charset=utf-8"
      },
      url: reqUrl,
      data: data,
      success: function (res) {
        if (callback != '') {
          callback(res);
        }
      }, fail: function (res) {
        console.log(JSON.stringify(res));
      }
    })
  }
}

(3)對外提供方法

module.exports = {
  post: post
}

(4)使用

  在app.js中引入post.js

const util = require("./utils/post.js");
App({
  onLaunch: function () {
     wx.login({
      success: res => {
        if (res.code) {
          util.post("getOpenId", {code: res.code}, function(ret){
            if(ret.data.code == 200){
              //獲取openId成功
            }
          });
        }
      }
  }
})

也可以將util保存到app里面,在pages頁面使用,直接引用app即可。

const app = getApp()

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM