我需要在承诺解析中捕获流事件中抛出的错误。类似的东西
function foo(){
return new Promise((resolve,reject) => {
resolve(res.pipe(transfomrStream).pipe(through2.obj(function(obj, enc, callback) {
on('end', ()=>{
await httpReq(...)
.then((crudRes) => assert.strictEqual(somerthing))
})
)
})
})
}
如何捕获断言失败?我试图在最后一个pipe()或函数调用中返回错误,但我只得到未经处理的承诺拒绝
如果你用 try catch 包围你的代码,你至少可以看到你的错误是什么:
function foo(){
try{
return new Promise((resolve,reject) => {
resolve(res.pipe(transfomrStream).pipe(through2.obj(function(obj, enc, callback) {
on('end', ()=>{
await httpReq(...)
.then((crudRes) => assert.strictEqual(somerthing))
})
)
})
})
}
catch(e) {
console.log(e)
reject()
}
}
另外,如果您有await
则无法使用.then()
。如果你在等待,你将不得不让你的函数async
。