0

我正在运行一个 Angular 8 应用程序,我收到一个错误,这似乎是 RxJS 中的一个主要错误,或者我遗漏了一些东西。

import { of } from 'rxjs';
import { switchMap } from 'rxjs/operators';
of(1,2,3)
  .pipe(
    switchMap((x) => of(x + 1))
  )

现在我希望订阅者收到以下输出:

//2, 3, 4

但相反,它输出了我在 switchMap 操作中返回的实际可观察​​对象:

//Observable<number>, Observable<number>, Observable<number>

概括

本质上,switchMap 似乎返回了一个类型的值,Observable<Observable<number>>而不仅仅是Observable<number>.

我不确定这是 TypeScript 还是 RxJS 错误,但似乎当我将 RxJS 恢复到 6.0.0 版本时,问题就消失了。


版本:

  • 角 8.0.0
  • 打字稿 3.4.5
  • RxJS 6.4.0

我刚刚测试过,同样的事情正在发生flatMap

4

1 回答 1

0

不知道这里的问题是什么,但我设法解决了它。必须执行以下步骤之一,但我不知道是哪一个:

于 2019-06-13T16:39:14.390 回答