Во всех моих службах у меня один и тот же метод:
private handleError<T>(operation = 'operation', result?: T) {
return (data: any): Observable<T> => {
// TODO: send the error to remote logging infrastructure
this.toastr.error(data.error.error);
return of(result as T);
};
}
И я называю это:
all(): Observable<Category[]> {
const listUrl = this.categoriesUrl;
return this.http.get<Category[]>(listUrl)
.pipe(
tap(data => this.toastr.success('success')),
catchError(this.handleError('allCategories', []))
);
}
Как мне сделать рефакторинг, чтобы он был только в одном месте ичто каждый сервис может легко ссылаться на него?