小编70X*_*70X的帖子

Angular Material SnackBar 和自定义 ErrorHandler 来通知错误

我有一个错误自定义处理程序类,它实现了 Angular 5 核心的 ErrorHandler。如果发生错误,handleError 方法必须通知它发送显示的小吃栏材料组件。如果错误是在测试按钮中引发的,那么一切都很好。

如果错误发生在 ngOnInit 方法上,则小吃栏无法正常工作,并且它显示在页面的错误位置,并且您无法再将其关闭。

IE

我的组件:

导出类 RootPageComponent 实现 OnInit {

    构造函数(){}

    公共按钮测试(){
        它.发生了;
    }
    ngOnInit() {
        它.发生了;
    }
}

这是我的自定义错误处理程序:

导出类 ErrorHandlerCustom 扩展 ErrorHandler {

    构造函数(...){}
    处理错误(){
        const notificationService = this.injector.get(NotificationService);
        // 使用 Snackbar 材料自定义通知
        notificationService.ExceptionError(错误);
    }
}

ngOnInit 中出现错误的结果: ngOnInit 错误

点击测试按钮: 点击测试按钮

error-handling angular-material snackbar angular

4
推荐指数
1
解决办法
1万
查看次数