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

时间:2017-02-02 19:03:26

标签: typescript promise rxjs observable

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

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

在Visual Studio代码中,如果我将鼠标悬停在变量data$上,则会将类型显示为Observable<Response>。但是,如果我明确地声明函数返回类型,例如fetchData(): Rx.Observable<Response> {...}我收到错误消息:&#34;找不到姓名&#39;回复&#39;。&#34;

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

2 个答案:

答案 0 :(得分:2)

由于fetch-api仍然是实验性的,根据你的Typescript-Version,你可能没有fetch-api的所有类型 - 在这种情况下你可以尝试安装@types/whatwg-fetch - 来自{{ 3}}

npm install @types/whatwg-fetch

您也可以在github上关注此主题以获取更新:npm

答案 1 :(得分:0)

您需要安装类型:

npm install --save @types/whatwg-fetch