欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

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

程序员文章站 2022-04-10 11:30:56
微信小程序 es6-promise.js封装请求与处理异步进程 下载es6-promise.js置于根目录下的libs文件夹下; 在根目录utils文件夹下新建http...

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

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

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

var promise = require('../libs/es6-promise.min')
function httpspromisify(fn) { 
 return function (obj = {}) {  
  return new promise((resolve, reject) => {   
   obj.success = function (res) {    
    resolve(res)   
   }   
   obj.fail = function (res) {    
    reject(res)   
   }   
   fn(obj)  
  }) 
 }
}
module.exports = { 
 httpspromisify: httpspromisify
}
  

调用方法:

var promisify = require('../../utils/httpspromisify')  page({

  onload: function(){
   promisify.httpspromisify(wx.request)({
    url: "https://xxxxxxx",
    header: {
     "content-type": "application/x-www-form-urlencoded"
    },
    method: "post",
    data: {

    }
   }).then(function(res){
     console.log(res)
   })    

  }, })

注意:

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

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

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