Comment puis-je effectuer les opérations suivantes avec des opérateurs louables et des tuyaux?
this.httpClient
.get(url)
.map((res: any) => {
const events = res.eventList;
return events.map(e => new EventLogModel(e));
})
.catch(this.handleError);
J'ai essayé, mais je n'arrive pas à faire fonctionner catchError
: catchError does not exist on type Observable<any>
:
this.httpClient
.get(url)
.pipe(
map((res: any) => {
const events = res.eventList;
return events.map(e => new EventLogModel(e));
})
)
.catchError(this.handleError);
De plus, je suppose que catch
et catchError
sont les mêmes, n'est-ce pas? Je l'importe comme ça:
import { map, catchError } from 'rxjs/operators';
mais je ne savais pas si c'était le bon opérateur à utiliser.
Votre hypothèse est correcte, l'opérateur lettable catchError
est le même que catch
.
Quant au placement de catchError
, il ne doit pas avoir de préfixe .
et doit être placé entre pipe
:
this.httpClient
.get(url)
.pipe(
map((res: any) => {
const events = res.eventList;
return events.map(e => new EventLogModel(e));
}),
catchError(this.handleError);
)