时间:2021-07-01 10:21:17 帮助过:14人阅读
微信小程序 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,这个亲测完美,而且文件大小比其他在都小很多,所以建议大家使用。
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!