我需要在angular 4應用程序中實現全局錯誤處理。 它是ErrorHandler
機制,適用於某些情況,但不適用於所有情況。 例如:當我們遇到一些嚴重錯誤,如丟失模板或其他東西時,ErrorHandler
忽略它。當我使用錯誤的URL模板,我得到Zone.js錯誤:Angular 2/4全局錯誤處理
zone.js?fad3:567 Unhandled Promise rejection: Template parse errors:
'my-app' is not a known element:
Zone.js不會引發異常,它只是控制檯錯誤,所以window.onerror沒有工作過。
錯誤處理程序:
@Injectable()
export class CommonErrorHandler implements ErrorHandler {
constructor(private injector: Injector) {
}
public handleError(error: any): void {
console.log("error", error);
}
}
登記在app.module:
providers: [
AuthGuard,
{ provide: ErrorHandler, useClass: CommonErrorHandler }
}
UPD plnkr例如加入:
你能提供你當前的'ErrorHandler'的代碼嗎? – Arg0n
@ Arg0n,添加代碼。 –