You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
awesome/src/app/error-routing/error/global-error-handler.servic...

24 lines
603 B
TypeScript

import { ErrorHandler, Injectable, Injector, NgZone } from '@angular/core';
import { Router } from '@angular/router';
@Injectable()
export class GlobalErrorHandlerService implements ErrorHandler {
constructor(private injector: Injector, private zone: NgZone) { }
handleError(error: any) {
// handle and/or log error, for example:
console.error(error);
// show error page
const router = this.injector.get(Router);
if (router) {
this.zone.run(() => {
router
.navigate(['error'])
.catch((err: any) => console.error(err));
});
}
}
}