async/await catch拒绝了Promises

Bre*_*dly 18 javascript node.js babeljs

我刚刚开始async/await并遇到问题.

我可以按预期做到:

async function x() {
  let y = await Promise.resolve(42);
  return y;
}
Run Code Online (Sandbox Code Playgroud)

但是当我拒绝一个Promise:

async function bad() {
  try {
   await Promise.reject('bad');
  } catch(err) {
    err; //AssertionError: TypeError: (0 , _errorHandler2.default) is not a function
  }
}
Run Code Online (Sandbox Code Playgroud)

我该如何rejected Promises接受async/await

Sha*_*oor 19

什么bad;独自应该怎么办?错误按预期捕获,您只是不对它执行任何操作:

async function bad() {
  try {
    await Promise.reject('bad');
  } catch(err) {
    console.log(err);
  }
}

bad();
Run Code Online (Sandbox Code Playgroud)

bad按预期输出.代码在这里.