asynchronous/等待拒绝承诺
我刚刚开始async/await
并遇到问题。
我可以按预期做到:
async function x() { let y = await Promise.resolve(42); return y; }
但是当我拒绝一个Promise
:
async function bad() { try { await Promise.reject('bad'); } catch(bad) { bad; //AssertionError: TypeError: (0 , _errorHandler2.default) is not a function } }
如何用async/await
捕获rejected Promises
?
什么bad;
单是应该做的? 错误如预期的那样被捕获,你只是不做任何事情:
async function bad() { try { await Promise.reject('bad'); } catch(err) { console.log(err); } } bad();
如预期的那样输出bad
。 代码在这里 。