unhandledrejection

unhandledrejection,即未使用 catch 处理的 Promise 错误:

  1. Promise.reject("hello");

Fundebug 插件捕获的这个错误之后,开发者将受到报警,然后可以在我们的控制台查看错误详情:

unhandledrejection - 图1

Fundebug 插件捕获的错误数据如下:

  1. {
  2. "notifierVersion": "1.5.1",
  3. "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36",
  4. "locale": "zh-CN",
  5. "url": "http://localhost:3001",
  6. "title": "TEST",
  7. "releaseStage": null,
  8. "name": "unhandledrejection",
  9. "time": 1546521929451,
  10. "message": "hello",
  11. "type": "unhandledrejection"
  12. }

过滤

如果不需要监控 unhandledrejection 的话,可以通过配置filters来实现:

  1. if ("fundebug" in window) {
  2. fundebug.filters = [
  3. {
  4. type: /^unhandledrejection$/
  5. }
  6. ];
  7. }