【未解决】promise问题
发布于 7 年前 作者 yangcai 13224 次浏览 来自 问答

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](/user/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()
1 回复

getRequest().then((successRes)=> {}, (failRes) => {})

回到顶部