当前位置:   article > 正文

微信小程序:同步请求_微信小程序 数据库.get请求 同步

微信小程序 数据库.get请求 同步

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

1、 globalData 全局变量

app.js

  1. App({
  2. // 全局变量
  3. globalData: {
  4. currentPage: 1,
  5. allData: null,
  6. findData: null,
  7. },
  8. })

index.js

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

2、 引用第三方库 es6-promise

  1. var Promise = require('../plugins/es6-promise.js')
  2. function wxPromisify(fn) {
  3. return function (obj = {}) {
  4. return new Promise((resolve, reject) => {
  5. obj.success = function (res) {
  6. //成功
  7. resolve(res)
  8. }
  9. obj.fail = function (res) {
  10. //失败
  11. reject(res)
  12. }
  13. fn(obj)
  14. })
  15. }
  16. }
  17. //无论promise对象最后状态如何都会执行
  18. Promise.prototype.finally = function (callback) {
  19. let P = this.constructor;
  20. return this.then(
  21. value => P.resolve(callback()).then(() => value),
  22. reason => P.resolve(callback()).then(() => { throw reason })
  23. );
  24. };
  25. /**
  26. * 微信请求get方法
  27. * url
  28. * data 以对象的格式传入
  29. */
  30. function getRequest(url, data) {
  31. var getRequest = wxPromisify(wx.request)
  32. return getRequest({
  33. url: url,
  34. method: 'GET',
  35. data: data,
  36. header: {
  37. 'Content-Type': 'application/json'
  38. }
  39. })
  40. }
  41. /**
  42. * 微信请求post方法封装
  43. * url
  44. * data 以对象的格式传入
  45. */
  46. function postRequest(url, data) {
  47. var postRequest = wxPromisify(wx.request)
  48. return postRequest({
  49. url: url,
  50. method: 'POST',
  51. data: data,
  52. header: {
  53. "content-type": "application/x-www-form-urlencoded"
  54. },
  55. })
  56. }
  57. module.exports = {
  58. postRequest: postRequest,
  59. getRequest: getRequest
  60. }

 

参考文章:https://segmentfault.com/q/1010000013496125

https://blog.csdn.net/qq_31383345/article/details/60574200

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小蓝xlanll/article/detail/597784
推荐阅读
相关标签
  

闽ICP备14008679号