我想在Angular 2中創建集中式異常處理(對於所有代碼而不僅僅是觀察對象),以便如果存在未處理的錯誤,它不會崩潰應用程序,但會記錄它。目前,當出現未處理的異常時,我的應用程序變得沒有響應,我必須重新加載它。如何在Angular 2中創建集中式異常處理以從未處理的異常中恢復
import { NgModule, ErrorHandler } from '@angular/core';
export class AppErrorHandler implements ErrorHandler
{
rethrowError = false;
handleError(error: any)
{
}
}
未處理的錯誤不要去的HandleError,但似乎我的應用程序停止工作,重新拋出:我如下創建的ErrorHandler。請幫忙。
如果你實現ErrorHandler,你需要重載/實現'call'函數,它可能類似'call(error,stackTrace = null,reason = null)'。在我的答案中檢查提供者部分。 – bhantol
嗨bhantol,謝謝你的回答。我已經有你在下面顯示的提供部分。錯誤成功轉到handleError函數。問題是它仍然會破壞我的應用程序。我想要記錄錯誤並儘可能繼續。 – LanceM
您可能想要描述一個方案,從而定義崩潰的含義。 「崩潰」會發生什麼,你不想發生的事情是什麼會進一步幫助。 – bhantol