【发布时间】:2020-06-09 12:35:16
【问题描述】:
我们目前的情况如前所述,我们有一个巨大的 Angular 应用程序,其中在各种具有错误处理功能的组件中触发了许多 API 调用,因此错误将通过 toast 消息显示给用户。
在我们的HttpService 中,我们正在做这样的事情:
lorem.pipe(
...
catchError(this.formatError)
);
...
formatError(error) {
return throwError(error.error);
}
error.error 包含一个 JSON 错误消息,例如 { success: false, code: 'XY' }
在我们的组件中,我们使用成功代码来显示适当的错误消息。
现在的问题:
我们正在使用 Sentry.io 使用 Angular 的 ErrorHandler 功能捕获客户端异常,但似乎 handleError 函数除了 Event 类型的正确 Object 之外,因此我们收到很多虚假错误消息传输。
我的问题是,在抛出错误结果后,map 是否有可能,以便ErrorHandler 的handleError 函数接收到有效的Event 但@987654333 中的错误部分组件内部的 observable 的 @ 仍然会得到 JSON-Object 作为错误,所以我们不必重写每个错误处理并仍然得到 Event 的 ErrorHandler?
【问题讨论】:
-
您正在寻找
throwError(error) -
对不起...我的错...这不是问题请参阅我在 formatError 中的更新,如果我 throwError 带有 error.error 则 ErrorHandler 不会收到错误事件,如果我 throwError 只是错误,我必须重写订阅中的所有错误代码处理,...这是我的问题
标签: angular error-handling rxjs sentry angular-errorhandler