使用bluebird这个三方的promise三方库可以解决兼容问题
这个函数可以把“错误先行函数”promise化
业务场景 :之前一直用在promise的兼容,还有对fs一些异步函数可以同步化 也可以用于request这个三方请求库,现在使用了一个mysql的三方库 发现不好使了。结果排查是this指向的问题。
解决方案:
let a = {
name :'小王',
sayName(cb){
cb(null,this.name)
}
}
let exec = bluebird.promisiy(a.sayName.bind(a));
exec();