微信小程序 es6-promise.js封装请求与处理异步进程
微信小程序es6-promise.js封装请求与处理异步进程
下载es6-promise.js置于根目录下的libs文件夹下;
在根目录utils文件夹下新建httpsPromisify.js,即定义封装请求的方法
varPromise=require('../libs/es6-promise.min') functionhttpsPromisify(fn){ returnfunction(obj={}){ returnnewPromise((resolve,reject)=>{ obj.success=function(res){ resolve(res) } obj.fail=function(res){ reject(res) } fn(obj) }) } } module.exports={ httpsPromisify:httpsPromisify }
调用方法:
varPromisify=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,这个亲测完美,而且文件大小比其他在都小很多,所以建议大家使用。
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!