微信小程序 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 相关文章推荐
JavaScript DOM 学习第七章 表单的扩展
Feb 19 Javascript
用js解决数字不能换行问题
Aug 10 Javascript
jQuery实现当前页面标签高亮显示的方法
Mar 10 Javascript
JavaScript中return false的用法
Mar 12 Javascript
jQuery插件MixItUp实现动画过滤和排序
Apr 12 Javascript
javascript 使用for循环时该注意的问题-附问题总结
Aug 19 Javascript
js使用cookie记录用户名的方法
Nov 26 Javascript
浅谈Vue SSR 的 Cookies 问题
Nov 20 Javascript
原生js+cookie实现购物车功能的方法分析
Dec 21 Javascript
VUE 全局变量的几种实现方式
Aug 22 Javascript
小程序Scroll-view上拉滚动刷新数据
Jun 21 Javascript
JavaScript常用8种数组去重代码实例
Sep 09 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简单静态页生成过程
2008/03/27 PHP
php5中类的学习
2008/03/28 PHP
一个显示某段时间内每个月的方法 返回由这些月份组成的数组
2012/05/16 PHP
Yii2框架dropDownList下拉菜单用法实例分析
2016/07/18 PHP
php伪静态验证码不显示的解决方案
2019/09/26 PHP
ie focus bug 解决方法
2009/09/03 Javascript
替代window.event.srcElement效果的可兼容性的函数
2009/12/18 Javascript
javascript获取元素CSS样式代码示例
2013/11/28 Javascript
Java/JS获取flash高宽的具体方法
2013/12/27 Javascript
JavaScript实现按Ctrl键打开新页面
2014/09/04 Javascript
javascript实现类似超链接的效果
2014/12/26 Javascript
AngularJS操作键值对象类似java的hashmap(填坑小结)
2016/11/12 Javascript
Vue服务端渲染和Vue浏览器端渲染的性能对比(实例PK )
2017/03/31 Javascript
SeaJS中use函数用法实例分析
2017/10/10 Javascript
Vue.js自定义指令学习使用详解
2019/10/19 Javascript
js+canvas实现两张图片合并成一张图片的方法
2019/11/01 Javascript
解决vue自定义指令导致的内存泄漏问题
2020/08/04 Javascript
python 提取文件的小程序
2009/07/29 Python
python网络编程之TCP通信实例和socketserver框架使用例子
2014/04/25 Python
Python工程师面试题 与Python Web相关
2016/01/14 Python
Tornado协程在python2.7如何返回值(实现方法)
2017/06/22 Python
Python 获得13位unix时间戳的方法
2017/10/20 Python
python3+PyQt5+Qt Designer实现扩展对话框
2018/04/20 Python
解决Matplotlib图表不能在Pycharm中显示的问题
2018/05/24 Python
详解Python 调用C# dll库最简方法
2019/06/20 Python
Python Web项目Cherrypy使用方法镜像
2020/11/05 Python
CSS3制作3D立方体loading特效
2020/11/09 HTML / CSS
HTML5表单验证特性(知识点小结)
2020/03/10 HTML / CSS
英国天然抗衰老护肤品品牌:Nakin Skin Care
2019/04/16 全球购物
北京一家公司的.net开发工程师笔试题
2012/04/17 面试题
工会经费申请报告
2015/05/15 职场文书
学校元旦晚会开场白
2015/05/29 职场文书
摘录式读书笔记
2015/07/01 职场文书
2016年春节问候语
2015/11/11 职场文书
超市啤酒狂欢夜策划方案范文!
2019/07/03 职场文书
Java Spring Boot 正确读取配置文件中的属性的值
2022/04/20 Java/Android