【发布时间】:2019-04-26 00:36:01
【问题描述】:
我在 Angular 官方教程(英雄之旅)中试图了解 catchError 在 Http 请求上的实现。
http请求的代码是这样的:
this.http.get<Hero[]>(this.heroesUrl)
.pipe(catchError(this.handleError<Hero[]>('getHeroes', [])));
catchError内部,传入handleError函数,实现like this(总结)
private handleError<T>(operation = 'operation', result?: T) {
return (error: any): Observable<T> => {
//Various operation with the error variable..
return of(result as T);
};
}
由于我是 TypeScript 的新手,我尝试阅读有关这种语法的文档(我还阅读了有关这段代码的其他问题),但没有找到回复: 是什么
return (error: any): Observable<T> => {
是什么意思?我不明白如何阅读它:谁评估错误变量?怎么样?
我读到 catchError 需要一个参数,该参数是一个具有 2 个参数的函数:err 是错误,catch 是可观察的源,但我看不出这里的错误是如何估价的。我认为在 catchError 中我必须通过 handleError(err,catch)。
【问题讨论】:
标签: angular typescript