【发布时间】:2021-12-20 13:52:14
【问题描述】:
对于下面的承诺链
new Promise(r=>r('b').then(()=>Promise.reject('x'))).catch(err=>console.log({error}))
返回内部承诺,因此它应该冒泡并被外部catch 块捕获并将错误记录到控制台。
但是,它得到了解决。
Promise {<fulfilled>: 'b'}
如何通过外部 catch 块捕获内部承诺?
【问题讨论】:
-
r('b')不返回承诺。您不能在其上链接.then()。好像你放错了一些括号:new Promise(r=>r('b')).then(()=>Promise.reject('x')).catch(err=>console.log({error}))
标签: javascript promise es6-promise