Подтвердить что ты не робот

Async/await catch отклонен Promises

Я только начинаю с async/await и сталкиваюсь с проблемой.

Я могу сделать, как ожидалось:

async function x() {
  let y = await Promise.resolve(42);
  return y;
}

Но когда я отклоняю Promise:

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

Как мне поймать rejected Promises с помощью async/await?

4b9b3361

Ответ 1

Только bad; должен делать? Ошибка поймана как и ожидалось, вы просто ничего не делаете с ней:

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

bad();

Выводит bad, как ожидалось. Код здесь.