加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 资源网站 > 资源 > 正文

微信小程序中实现同步请求的方法

发布时间:2020-12-14 20:01:03 所属栏目:资源 来源:网络整理
导读:本篇文章给大家带来的内容是关于微信小程序中实现同步请求的方法,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。 微信小程序默认是用同步请求的,但有些时候需要数据的同步请求,可使用的方法有很多,比较常用的有两种 1、 globalData 全

本篇文章给大家带来的内容是关于微信小程序中实现同步请求的方法,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

微信小程序默认是用同步请求的,但有些时候需要数据的同步请求,可使用的方法有很多,比较常用的有两种

1、 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',header: {
    "content-type": "application/x-www-form-urlencoded"
    },})
    }

module.exports = {
postRequest: postRequest,getRequest: getRequest
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读