首页 > 解决方案 > Angular 不在控制台上显示 JavaScript 错误

问题描述

我不知道发生了什么,但有一天我在控制台上看不到任何 javascript 错误。

如果页面因某些 javascript 错误而为空白,我需要在该 Angular 函数上放置一个断点以查看哪个是错误。

function getDebugContext(error) {
return (/** @type {?} */ (error))[ERROR_DEBUG_CONTEXT];

}

标签: javascriptangularconsole

解决方案


请创建一个名为 GlobalErrorHandler.ts 的 .ts 文件并将其粘贴

import { Router } from '@angular/router';
import { ErrorHandler, Injectable, Injector } from '@angular/core';
@Injectable()
export class GlobalErrorHandler implements ErrorHandler {
  constructor(private injector: Injector) { }
  handleError(error) {
    const router = this.injector.get(Router);
    console.log(error.stack.toString());

  }

}

将此导入您的 app.module.ts 提供程序

providers: [

    {
      provide: ErrorHandler,
      useClass: GlobalErrorHandler
    }
  ],

这应该有效。


推荐阅读