我正在通过扩展Angular 2 Error处理程序来实现自定义错误处理程序。我能够这样做并输出到控制台,但我想在app.component中触发我的模态窗口。
error.module.ts
import{ErrorHandler} from "@angular/core";
import{NgModule} from "@angular/core";
export class MyErrorHandler implements ErrorHandler {
call(error: any, stackTrace: any = null, reason: any = null) {
// do something with the exception
console.log("do something with the exception");
}
// I handle the given error.
public handleError( error: any ): void {
console.log(JSON.parse(error._body).status_code);
}
}
@NgModule({
providers: [
{
provide: ErrorHandler,
useClass: MyErrorHandler
}
]
})
export class MyErrorModule {
}
然后我导入错误处理程序:
app.module.ts
import {MyErrorHandler} from "./error.module";
import {MyErrorModule } from "./error.module";
现在在我的app.Component中我想知道错误何时发生,得到error._body并打开我的模态窗口:
this.childModal.show();
app.component.ts监听错误事件的正确方法是什么?