Angular 捕获异常并在视图中显示错误消息
在使用Angular 捕获异常并在视图中显示错误消息,angular,typescript,exception,rxjs,observable,Angular,Typescript,Exception,Rxjs,Observable,在使用catch()的subscribe()方法时,我能够捕获异常,但这是在服务调用的基础上完成的 是否有方法捕获页面中任何位置发生的异常并将其显示在视图中 捕获异常并在控制台中显示它们是很简单的,但是我需要在视图中显示一些东西,以提供有用的错误消息,而不是仅仅冻结 谢谢您可以覆盖模块中的全局错误处理程序: 对于自定义错误对话框或错误消息,我将创建一个自定义ErrorLogService,它允许组件订阅错误事件。显示错误的组件将订阅错误事件,并显示错误消息,或弹出错误对话框 关于如何使用Flu
catch()
的subscribe()
方法时,我能够捕获异常,但这是在服务调用的基础上完成的
是否有方法捕获页面中任何位置发生的异常并将其显示在视图中
捕获异常并在控制台中显示它们是很简单的,但是我需要在视图中显示一些东西,以提供有用的错误消息,而不是仅仅冻结
谢谢您可以覆盖模块中的全局错误处理程序: 对于自定义错误对话框或错误消息,我将创建一个自定义ErrorLogService,它允许组件订阅错误事件。显示错误的组件将订阅错误事件,并显示错误消息,或弹出错误对话框 关于如何使用Flux来实现这一点,请参见此答案(模式很重要,而不是涉及的特定类): 您可以使用来对页面上的所有异常做出反应,但我不确定这是否是一个好主意。。。
import { NgModule, ErrorHandler } from '@angular/core';
class MyErrorHandler implements ErrorHandler {
handleError(error) {
// do something with the exception
}
}
@NgModule({
providers: [{ provide: ErrorHandler, useClass: MyErrorHandler }]
})
class MyModule {}