typescript - 如何声明 Rx.Observable.fromPromise() 的 TypeScript 返回类型

标签 typescript promise rxjs observable

我有一个函数返回 Rx.Observable根据 promise 创建,如下所示:

var data$ = fetchData();
fetchData() {
    return Rx.Observable.fromPromise(fetch("someUrl"));
}

在 Visual Studio Code 中,如果我将鼠标悬停在变量 data$ 上它显示类型为 Observable<Response> 。但是,如果我明确声明函数返回类型,例如fetchData(): Rx.Observable<Response> {...}我收到错误:“找不到名称“Response”。”

将返回类型声明为 Observable<any> 时有效但这太笼统了。我应该如何声明函数返回类型以匹配 data$ Observable<Response> 的类型?

最佳答案

由于 fetch-api 仍处于实验阶段,根据您的 Typescript 版本,您可能无法获得 fetch-api 的所有类型 - 在这种情况下,您可以尝试安装 @types/whatwg-fetch-来自 npm 的输入.

npm install @types/whatwg-fetch

您还可以在 github 上关注此线程以获取 future 更新:https://github.com/Microsoft/TypeScript/issues/4948

关于typescript - 如何声明 Rx.Observable.fromPromise() 的 TypeScript 返回类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42010300/

相关文章:

javascript - 用于解析对象数组的 promise 的 typescript

angular - rxjs 和 WebStorm

javascript - Angular 2+ 多重计算和多重结果

typescript - Typescript 中的参数与选项

javascript - 在 Javascript 中处理数据库查询

rxjs - 非扁平形式的 switchMap 相当于什么?

angular - Angular 如何使用 *ngFor 过滤未知数量的元素?

angular - 如何从angular2中的函数调用视频暂停事件

angular - 是否可以在 Typescript 中按值 "filter"映射?

javascript - 使用 promises 编写可读代码的最佳方法是什么?