gpt4 book ai didi

angular - Http.get().catch 的返回类型是什么?

转载 作者:搜寻专家 更新时间:2023-10-30 22:00:43 24 4
gpt4 key购买 nike

我目前正在学习 Angular 2,参加 Deborah Kurata 的 Pluralsight 类(class)(Angular 2:入门)。到目前为止它很棒,但是,对于我来说,我似乎无法发现我的 .catch 的返回类型应该是什么。在她的类(class)中,以及目前为止我发现的每个示例中,返回类型都留空。

这是我的:

getProducts(): Observable<IProduct[]> {
return this._http.get("someurl")
.map {.....}
.catch(this.handleError);
}

handleError (response: Response) **/*what goes here?*/** {
// the code in the course says Observable.throw, but chrome is
// complaining that there is no such function. I have tracked
// down "static throw: typeof ErrorObservable.create;" in
// Observable.ts but I'm not sure what's going on here.
}

最佳答案

最常见的返回类型是 Observable

准确地说,catch() 运算符的选择器函数定义为:

(err: any, caught: Observable): ObservableInput

返回的 Observable 是使用 subscribeToResult 订阅的,它支持多种返回类型(这就是为什么有 ObservableInput 而不仅仅是 Observable 的原因)。无论如何,查看联机文档中没有的源代码中的示例会更容易,您应该能够理解它是如何工作的:https://github.com/ReactiveX/rxjs/blob/master/src/operator/catch.ts#L8

或者看看 subscribeToResult 支持什么:https://github.com/ReactiveX/rxjs/blob/master/src/util/subscribeToResult.ts#L17

关于angular - Http.get().catch 的返回类型是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42975774/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com