Propuesta sin clase.
Cómo en el video anterior, no funciona la clase. Mi propuesta es la siguiente:
error.interceptor.ts
{ HttpErrorResponse, HttpEvent, HttpInterceptorFn } from [@ [@ [@ [@'@angular](https://ed.team/u/'@angular)](https://ed.team/u/'@angular)](https://ed.team/u/'@angular)](https://ed.team/u/'@angular)/common/http';
import { catchError, Observable, throwError } from 'rxjs';
export const errorInterceptor: HttpInterceptorFn = (req, next) => {
return next(req).pipe(
catchError((error) => {
console.error('Ocurrió un error:', error);
return throwError(() => new Error('test'));
})
);
};
En el appmodule tambien se agregó en el provider: providers: [provideHttpClient(withInterceptors([interceptorInterceptor, errorInterceptor]))],
Elcódigo es el siguiente:
{ NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { AppRoutingModule } from './app-routing.module';
import { AppComponent } from './app.component';
import { provideHttpClient, withInterceptors } from '@angular/common/http';
import { interceptorInterceptor } from './interceptor/interceptor.interceptor';
import { errorInterceptor } from './interceptor/error.interceptor';
[@
<a href="/u/NgModule" data-community-mention="USER" data-community-mention-slug="NgModule">@NgModule</a>](https://ed.team/u/
<a href="/u/NgModule" data-community-mention="USER" data-community-mention-slug="NgModule">@NgModule</a>)({
declarations: [
AppComponent
],
imports: [
BrowserModule,
AppRoutingModule,
],
providers: [provideHttpClient(withInterceptors([interceptorInterceptor, errorInterceptor]))],
bootstrap: [AppComponent]
})
export class AppModule { }