微信小程序 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控件的相对独立性
Sep 03 Javascript
jQuery 常见操作实现方式和常用函数方法总结
May 06 Javascript
JQuery选择器特辑 详细小结
May 14 Javascript
侧栏跟随滚动的简单实现代码
Mar 18 Javascript
jquery ajax post提交数据乱码
Nov 05 Javascript
SWFUpload多文件上传及文件个数限制的方法
May 31 Javascript
jquery层级选择器的实现(匹配后代元素div)
Sep 05 Javascript
jQuery获取复选框选中的当前行的某个字段的值
Sep 15 jQuery
vue和webpack打包项目相对路径修改的方法
Jun 15 Javascript
vue elementUI使用tabs与导航栏联动
Jun 21 Javascript
javascript数组元素删除方法delete和splice解析
Dec 09 Javascript
js实现图片上传到服务器和回显
Jan 19 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查询whois信息的方法
2015/06/08 PHP
PHP删除数组中特定元素的两种方法
2019/02/28 PHP
php/JS实现的生成随机密码(验证码)功能示例
2019/06/06 PHP
js 模拟气泡屏保效果代码
2010/07/10 Javascript
在VS2008中使用jQuery智能感应的方法
2010/12/30 Javascript
使用滤镜设置透明导致 IE 6/7/8/9 解析异常的解决方法
2011/04/07 Javascript
document.write()及其输出内容的样式、位置控制
2013/08/12 Javascript
在页面加载完成后通过jquery给多个span赋值
2014/05/21 Javascript
jQuery实现的原图对比窗帘效果
2014/06/15 Javascript
Node.js与Sails ~项目结构与Mvc实现及日志机制
2015/10/14 Javascript
jQuery toggle 代替方法
2016/03/22 Javascript
Bootstrap每天必学之级联下拉菜单
2016/03/27 Javascript
jQuery DataTables插件自定义Ajax分页实例解析
2020/04/28 Javascript
Javascript之图片的延迟加载的实例详解
2017/07/24 Javascript
jQuery条件分页 代替离线查询(附代码)
2017/08/17 jQuery
JavaScript使用FileReader实现图片上传预览效果
2020/03/27 Javascript
微信小程序上传图片到服务器实例代码
2017/11/07 Javascript
vue watch监听对象及对应值的变化详解
2018/02/24 Javascript
nodejs实现解析xml字符串为对象的方法示例
2018/03/14 NodeJs
js+canvas实现滑动拼图验证码功能
2018/03/26 Javascript
vue弹窗组件的实现示例代码
2018/09/10 Javascript
浅谈React Event实现原理
2018/09/20 Javascript
js生成1到100的随机数最简单的实现方法
2020/02/07 Javascript
基于leaflet.js实现修改地图主题样式的流程分析
2020/05/15 Javascript
Python使用gensim计算文档相似性
2016/04/10 Python
教大家玩转Python字符串处理的七种技巧
2017/03/31 Python
python实现远程通过网络邮件控制计算机重启或关机
2018/02/22 Python
react+django清除浏览器缓存的几种方法小结
2019/07/17 Python
python生成requirements.txt的两种方法
2019/09/18 Python
HTML5实现视频直播功能思路详解
2017/11/16 HTML / CSS
通过canvas转换颜色为RGBA格式及性能问题的解决
2019/11/22 HTML / CSS
营销总监岗位职责
2014/09/16 职场文书
安徽导游词
2015/02/12 职场文书
追讨欠款律师函
2015/06/24 职场文书
nginx优化的六点方法
2021/03/31 Servers
Python使用Web框架Flask开发项目
2022/06/01 Python