Heim  >  Artikel  >  WeChat-Applet  >  Methoden zum Implementieren synchroner Anfragen im WeChat-Applet

Methoden zum Implementieren synchroner Anfragen im WeChat-Applet

不言
不言Original
2018-08-11 17:34:0915935Durchsuche

Der Inhalt dieses Artikels befasst sich mit der Methode zur Implementierung von Synchronisierungsanfragen im WeChat-Applet. Ich hoffe, dass er für Freunde hilfreich ist.

Das WeChat-Applet verwendet standardmäßig synchrone Anfragen, aber manchmal sind synchrone Anfragen für Daten erforderlich. Es gibt viele Methoden, die verwendet werden können, und es gibt zwei häufig verwendete Methoden

1 .globalData Globale Variablen

app.js

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

index.js

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

2. Referenzieren Sie die Drittanbieterbibliothek 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
}

Verwandte Empfehlungen:

WeChat-Applet-Beispiel: Code zum Erhalten von Systemzeit, Zeitstempelzeit sowie Zeitstempeladdition und -subtraktion

Codebeispiel für mehrere Datencaches im WeChat-Applet

Mini-Programmkomponente: Einführung in die Chat-Sitzungskomponente (mit Code)

Das obige ist der detaillierte Inhalt vonMethoden zum Implementieren synchroner Anfragen im WeChat-Applet. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn