小编mar*_*upe的帖子

如何异步处理未处理的承诺拒绝?

我正在努力解决我面临的有关 async/await 和 Promise 的问题。我设法将我的问题归结为以下代码:

async function sleep(ms: number) {
  return new Promise(resolve => {
    setTimeout(resolve, ms);
  });
}

async function fetchMock(): Promise<any> {
  return new Promise(() => {
    throw 'error fetching result';
  });
}

async function main(): Promise<any> {
  const kickedOffRequest = fetchMock();
  await sleep(10);
  return kickedOffRequest;
}

main()
  .then(() => console.log('resolved promise!'))
  .catch(error => console.error('caught error!', error));
Run Code Online (Sandbox Code Playgroud)

我收到以下警告:

(node:82245) UnhandledPromiseRejectionWarning: error fetching result
(node:82245) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async …
Run Code Online (Sandbox Code Playgroud)

javascript error-handling promise async-await

7
推荐指数
2
解决办法
8490
查看次数

标签 统计

async-await ×1

error-handling ×1

javascript ×1

promise ×1