问题模块 | 框架类型 | 问题类型 | API/组件名称 | 终端类型 | 微信版本 | 基础库版本 |
---|---|---|---|---|---|---|
API和组件 | 小程序 | Bug | promise | 工具 | 7 | 2.6.2 |
bluebird.js、prom.js、和util.js在同一个目录下
bluebird.js(这个是在官网拿的 地址:https://cdn.jsdelivr.net/bluebird/latest/bluebird.js)
prom.js
var Promise = require( './bluebird.js' ) //我用了bluebird.js /** * 将小程序的API封装成支持Promise的API * @params fn {Function} 小程序原始API,如wx.login */ function wxPromisify(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 = { wxPromisify: wxPromisify } |
在util文件中定义一个函数
function getb(){ return 'uril返回的' } module.exports = { getb: getb, } |
在index引入util文件并使用
var utils = require( '../../utils/util.js' ); var prom = require( '../../utils/prom.js' ); var getRequest = prom.wxPromisify(utils.geta()) //这里要怎么接收geta返回的内容 getRequest().then() |