Maison  >  Article  >  Applet WeChat  >  Méthodes pour implémenter des requêtes synchrones dans l'applet WeChat

Méthodes pour implémenter des requêtes synchrones dans l'applet WeChat

不言
不言original
2018-08-11 17:34:0915858parcourir

Le contenu de cet article concerne la méthode de mise en œuvre des demandes de synchronisation dans l'applet WeChat. Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer.

L'applet WeChat utilise des requêtes synchrones par défaut, mais parfois des requêtes synchrones de données sont nécessaires. Il existe de nombreuses méthodes qui peuvent être utilisées, et il y en a deux couramment utilisées

1. . globalData Variables globales

app.js

App({
  // 全局变量
  globalData: {
    currentPage: 1,
    allData: null,
    findData: null,
  },
})

index.js

// 获取应用实例
const app = getApp();
// 使用全局变量
data = app.globalData.currentPage;

2. Référencez la bibliothèque tierce es6-promise

var Promise = require('../plugins/es6-promise.js')

function wxPromisify(fn) {
  return function (obj = {}) {
    return new Promise((resolve, reject) => {
      obj.success = function (res) {
        //成功
        resolve(res)
      }
      obj.fail = function (res) {
        //失败
        reject(res)
      }
      fn(obj)
    })
  }
}
//无论promise对象最后状态如何都会执行
Promise.prototype.finally = function (callback) {
  let P = this.constructor;
  return this.then(
    value => P.resolve(callback()).then(() => value),
    reason => P.resolve(callback()).then(() => { throw reason })
  );
};
/**
 * 微信请求get方法
 * url
 * data 以对象的格式传入
 */
function getRequest(url, data) {
  var getRequest = wxPromisify(wx.request)
  return getRequest({
    url: url,
    method: 'GET',
    data: data,
    header: {
      'Content-Type': 'application/json'
    }
  })
}

/**
 * 微信请求post方法封装
 * url
 * data 以对象的格式传入
 */
function postRequest(url, data) {
  var postRequest = wxPromisify(wx.request)
  return postRequest({
    url: url,
    method: 'POST',
    data: data,
    header: {
      "content-type": "application/x-www-form-urlencoded"
    },
  })
}

module.exports = {
  postRequest: postRequest,
  getRequest: getRequest
}
Recommandations associées :

Exemple de programme WeChat Mini : obtention de code pour implémenter l'heure du système, l'heure d'horodatage et l'ajout et la soustraction d'horodatage

Plusieurs éléments dans Exemples de code du mini programme WeChat pour la mise en cache des données

Composant du mini programme : Introduction au composant de session de chat (avec code)

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn