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


Posted in Javascript onJune 12, 2017

微信小程序 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,这个亲测完美,而且文件大小比其他在都小很多,所以建议大家使用。

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

Javascript 相关文章推荐
VBScript版代码高亮
Jun 26 Javascript
javascript css float属性的特殊写法
Nov 13 Javascript
JS 文字符串转换unicode编码函数
May 30 Javascript
jquery中ajax调用json数据的使用说明
Mar 17 Javascript
JavaScript高级程序设计(第3版)学习笔记11 内建js对象
Oct 11 Javascript
jQuery插件FusionCharts实现的3D帕累托图效果示例【附demo源码】
Mar 25 jQuery
获取当前按钮或者html的ID名称实例(推荐)
Jun 23 Javascript
element-ui中select组件绑定值改变,触发change事件方法
Aug 24 Javascript
详解Vue.js自定义tipOnce指令用法实例
Dec 19 Javascript
Vue组件通信的几种实现方法
Apr 25 Javascript
Vue触发input选取文件点击事件操作
Aug 07 Javascript
js面向对象方式实现拖拽效果
Mar 03 Javascript
AngularJS 异步解决实现方法
Jun 12 #Javascript
jquery+css实现侧边导航栏效果
Jun 12 #jQuery
angularjs实现上拉加载和下拉刷新数据功能
Jun 12 #Javascript
Vue非父子组件通信详解
Jun 12 #Javascript
详解angularjs 关于ui-router分层使用
Jun 12 #Javascript
Vue 2中ref属性的使用方法及注意事项
Jun 12 #Javascript
深究AngularJS如何获取input的焦点(自定义指令)
Jun 12 #Javascript
You might like
PHP在网页中动态生成PDF文件详细教程
2014/07/05 PHP
JQuery 1.4 中的Ajax问题
2010/01/23 Javascript
js之onload事件的一点使用心得
2013/08/14 Javascript
jQuery实现统计复选框选中数量
2014/11/24 Javascript
本人自用的global.js库源码分享
2015/02/28 Javascript
Node.js+jade抓取博客所有文章生成静态html文件的实例
2017/09/19 Javascript
Vue EventBus自定义组件事件传递
2018/06/25 Javascript
在小程序/mpvue中使用flyio发起网络请求的方法
2018/09/13 Javascript
脚手架vue-cli工程webpack的基本用法详解
2018/09/29 Javascript
Vue的H5页面唤起支付宝支付功能
2019/04/18 Javascript
vue移动端实现手机左右滑动入场动画
2020/06/17 Javascript
ES10的13个新特性示例(小结)
2019/09/23 Javascript
Vue.js下拉菜单组件使用方法详解
2019/10/19 Javascript
Vue按时间段查询数据组件使用详解
2020/08/21 Javascript
javascript操作向表格中动态加载数据
2020/08/27 Javascript
移动端JS实现拖拽两种方法解析
2020/10/12 Javascript
pandas中Timestamp类用法详解
2017/12/11 Python
利用Python暴力破解zip文件口令的方法详解
2017/12/21 Python
Python决策树分类算法学习
2017/12/22 Python
Python3.6简单反射操作示例
2018/06/14 Python
Python3中关于cookie的创建与保存
2018/10/21 Python
用Python实现将一张图片分成9宫格的示例
2019/07/05 Python
详解基于python-django框架的支付宝支付案例
2019/09/23 Python
python的faker库用法
2019/11/28 Python
matplotlib.pyplot画图并导出保存的实例
2019/12/07 Python
在django中实现choices字段获取对应字段值
2020/07/12 Python
matplotlib绘制鼠标的十字光标的实现(自定义方式,官方实例)
2021/01/10 Python
检测浏览器对HTML5和CSS3支持度的方法
2015/06/25 HTML / CSS
联想阿根廷官方网站:Lenovo Argentina
2019/10/14 全球购物
校企合作协议书
2014/04/16 职场文书
歌颂祖国的演讲稿
2014/05/04 职场文书
幼儿园小班个人总结
2015/02/12 职场文书
2015年小学二年级班主任工作总结
2015/05/21 职场文书
保护环境建议书作文400字
2015/09/14 职场文书
Java输出Hello World完美过程解析
2021/06/13 Java/Android
深入浅析python3 依赖倒置原则(示例代码)
2021/07/09 Python