我可能在这里遗漏了一些非常明显的东西,但是我如何将util.promisify
与如下所示的函数一起使用呢?
function awkwardFunction (options, data, callback) {
// do stuff ...
let item = "stuff message"
return callback(null, response, item)
}
我可以这样叫它:
awkwardFunction ({doIt: true},'some data', (err, result, item) => {
console.log('result')
console.log(result)
console.log('item')
console.log(item)
done()
})
然后回来
result
{ data: 'some data' }
item
stuff message
使用简化版本时:
let kptest = require('util').promisify(awkwardFunction)
kptest({doIt: true},'some data')
.then((response, item) => {
console.log('response')
console.log(response)
console.log('item')
console.log(item)
})
.catch(err => {
console.log(err)
})
同时尝试访问"response“和"item",第二个参数似乎被忽略了……
result
{ data: 'some data' }
item
undefined
有没有一种方法可以在不更改函数的情况下做到这一点(实际上,它是一个库函数,所以我不能)。
https://stackoverflow.com/questions/54039289
复制相似问题