属性 'forkJoin' 在类型 'typeof observable' 上不存在 - angular2

property 'forkJoin' does not exist on type 'typeof observable' - angular2

我主要使用此处接受的答案尝试使用 forkJoin:

我收到上述错误消息,因为 forkJoin 不可用。

有人知道为什么吗?

你这样做了吗?

import { Observable } from 'rxjs/Observable';
import 'rxjs/add/observable/forkJoin';

您必须单独添加方法。

你只需要更换

import { Observable } from 'rxjs/Observable';

来自

import { Observable } from 'rxjs/Rx';

它会开始工作

警告:请勿使用此方法,因为它将包括整个 RxJs 库(增加 kb 包大小)

我已经 运行 Angular 版本 5.2.0 并且遇到了类似的问题。所以不要用下面的方式调用 observable

import { Observable } from 'rxjs/observable'

我通过包含整个 RxJs 库导入了 Observable

import { Observable } from 'rxjs/Rx'

然后对于 forkJoin,包含以下导入模块

import 'rxjs/add/observable/forkJoin';

代码编译成功。

检查你的Rxjs版本,如果你使用的是Rxjs 6,使用 import { Observable } from 'rxjs/Observable'; import 'rxjs/add/observable/forkJoin'; 行不通,请使用 import { Observable, forkJoin } from 'rxjs' 代替

Angular 6 稍微改变一下。 forkJoin 已转换为常规函数,而不是:

import {Observable} from 'rxjs/Observable';
...
return Observable.forkJoin(
    this.http.get('someurl'),
    this.http.get('someotherurl'));

使用:

import {forkJoin} from 'rxjs';
...
return forkJoin(
    this.http.get('someurl'),
    this.http.get('someotherurl'));

您可以前往 https://www.metaltoad.com/blog/angular-6-upgrading-api-calls-rxjs-6 了解更多说明。

对我来说,Angular4 有帮助:

import {Observable} from 'rxjs/Rx';
instead of:
import {Observable} from 'rxjs/Observable';