mean-guide-frontend
Version:
This project was generated with [Angular CLI](https://github.com/angular/angular-cli) version 9.1.1.
32 lines (28 loc) • 877 B
text/typescript
import {
HttpHandler,
HttpInterceptor,
HttpRequest,
HttpErrorResponse,
} from '@angular/common/http';
import { catchError } from 'rxjs/operators';
import { throwError } from 'rxjs';
import { Injectable } from '@angular/core';
import { MatDialog } from '@angular/material/dialog';
import { ErrorComponent } from './error/error.component';
()
export class ErrorInterceptor implements HttpInterceptor {
constructor(private dialog: MatDialog){}
intercept(req: HttpRequest<any>, next: HttpHandler) {
return next.handle(req).pipe(
catchError((error: HttpErrorResponse) => {
const errorMessage = error.error.message ? error.error.message : 'An unknown error ocurred!'
this.dialog.open(ErrorComponent, {
data: {
message:errorMessage
}
})
return throwError(error)
})
);
}
}