この記事の内容は、WeChat アプレットでの同期リクエストの実装方法に関するものです。必要な方は参考にしていただければ幸いです。
WeChat アプレットはデフォルトで同期リクエストを使用しますが、場合によってはデータの同期リクエストが必要になる場合があります。使用できるメソッドは 2 つあります。globalData グローバル変数
app.js
App({ // 全局变量 globalData: { currentPage: 1, allData: null, findData: null, }, })
index.js
// 获取应用实例 const app = getApp(); // 使用全局变量 data = app.globalData.currentPage;
2. サードパーティライブラリ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 }
関連する推奨事項:
WeChatアプレットの例: システム時刻、タイムスタンプ時刻、タイムスタンプの加算と減算のコードを実装します WeChat アプレット プログラム内の複数のデータ キャッシュのコード例 ミニ プログラム コンポーネント: チャット セッション コンポーネントの紹介 (コード付き)以上がWeChat アプレットで同期リクエストを実装するメソッドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。