rxjs - 在RxJS 5.0中找不到 `combineLatest`

标签 rxjs rxjs5

以下代码使用RxJS 5.0导致了我的Observable.combineLatest is not a function:

let Observable = require('rxjs/Observable.js').Observable;
import 'rxjs/add/operator/combineLatest';

Observable
.combineLatest([player, spaceShip], (shotEvents, spaceShip) => ({
    x: spaceShip ? spaceShip.x : board.canvas.width / 2,
    timestamp: shotEvents.timestamp
}))

所有其他Observable都可以解析,唯一无法解析的功能是我的combineLatest。我尝试observables/combineLatest只是为了尝试无济于事。

我正在使用webpackbabel编译所有内容,并且该代码能够解析scanrangeintervalmap和其他一些代码。甚至使用flatMapimport 'rxjs/add/operator/mergeMap';也能正常工作。

但不是combineLatest
因此,如果有人有可行的示例,将不胜感激。除了a unit test that is basically the same thing (an array of observables and a function).,在文档中找不到其他任何内容

更新2018年4月4日

在RxJs 5.5上,使用以下命令:
import { combineLatest } from 'rxjs/observable/combineLatest'

前进(RxJs 6)使用以下方法:
import { combineLatest } from 'rxjs'

最佳答案

我认为#1722是此处的相关GitHub问题。

我正在使用typescript@2.0.10RxJS@5.0.3webpack@2.1.0-beta.25的项目中。以下对我有用:

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

Observable.combineLatest(
  source1,
  source2
).subscribe(sink);

关于rxjs - 在RxJS 5.0中找不到 `combineLatest`,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35980322/

相关文章:

angular - 如何使用 RxJS 调整重试超时时间?

javascript - RxJS:如何导入 Just

javascript - Angular 8 拦截器 - 如何处理状态 200 的响应

RxJs:您可以将运算符作为参数传播到管道运算符中吗

node.js - Observable.fromPromise 仅在 CircleCI 上构建时不存在

javascript - 使用 rxjs5 获取 BehaviorSubject 当前值的简单方法

javascript - Rxjs 绑定(bind)创建 observable 的位置的上下文

Angular2 回调与 Promise/Observable

RxJS 设置请求的最小延迟

angular - 如果术语不为空/空,如何只执行一个 Observable?