如何修复以下错误? 属性 'pipe' 在类型 OperatorFunction 上不存在

How do I fix the following error? property 'pipe' does not exist on type OperatorFunction

我根据 RxJS 6 文档编写了以下代码。我目前是 运行 angular 5,RxJS 6 和 angularfire2 rc.10。我得到的错误是

[ts] property 'pipe' does not exist on type 'OperatorFunction<{}, [{}, user, string]>'.

这是代码

this.companies$ = combineLatest(this.authService.user$, this.filter$).pipe(
  switchMap(([user, filter]) =>
    this.afs.collection("companies", ref => {
        if (user) {
          ref.where("owner.network", "==", user.activeNetworkProfile.id);
        }
        if (user) {
          ref.where("name", "==", filter);
        }
        return ref;
      }).valueChanges()
  )
);

this.authService.user$ 和 this.filter$ 是可观察的。

public filter$: Observable<string>;
public user$ : Observable<User>;

您没有显示您的导入语句,但从错误消息来看,您似乎导入了错误的 combineLatest 函数。

RxJS6 有两个 combineLatest 函数:

  • 管道运算符:import {combineLatest} from 'rxjs/operators'
  • 创建方法:import { combineLatest } from 'rxjs'

您正在使用创建方法,因此导入应该来自 'rxjs' 而不是来自 'rxjs/operators'