在我的所有服务中,我都采用相同的方法:
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', []))
);
}
我应该如何重构它只在一个地方拥有它,并且每个服务都可以轻松地引用它?