当前位置:Gxlcms > JavaScript > 微信小程序 es6-promise.js封装请求与处理异步进程

微信小程序 es6-promise.js封装请求与处理异步进程

时间:2021-07-01 10:21:17 帮助过:14人阅读

微信小程序 es6-promise.js封装请求与处理异步进程

下载es6-promise.js置于根目录下的libs文件夹下;

在根目录utils文件夹下新建httpsPromisify.js,即定义封装请求的方法

  1. var Promise = require('../libs/es6-promise.min')
  2. function httpsPromisify(fn) {
  3. return function (obj = {}) {
  4. return new Promise((resolve, reject) => {
  5. obj.success = function (res) {
  6. resolve(res)
  7. }
  8. obj.fail = function (res) {
  9. reject(res)
  10. }
  11. fn(obj)
  12. })
  13. }
  14. }
  15. module.exports = {
  16. httpsPromisify: httpsPromisify
  17. }
  18.   

调用方法:

  1. var Promisify = require('../../utils/httpsPromisify') Page({
  2. onLoad: function(){
  3. Promisify.httpsPromisify(wx.request)({
  4. url: "https://XXXXXXX",
  5. header: {
  6. "Content-Type": "application/x-www-form-urlencoded"
  7. },
  8. method: "POST",
  9. data: {
  10. }
  11. }).then(function(res){
  12. console.log(res)
  13. })
  14. }, })

注意:

目前支持promise的第三方库有许多,如$q.js,bluebird.js等等,但是需要注意的是,这些在微信开发工具上可以正常使用,但是到真机上就没有效果了;

所以用es6-Promise.js,这个亲测完美,而且文件大小比其他在都小很多,所以建议大家使用。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

人气教程排行