根据RxJS中之前的输入推送新的observable

时间:2016-11-11 21:33:59

标签: rxjs

我发现很难在我有验证的情况下撰写主题或观察对象。这是函数式编程的本质,但似乎Reactive Programming只处理每一段数据。此外,这些例子有点过于笼统,没有涉及很多方面的现实世界的例子,尽管这是个人意见。

我想根据前一个给观察者发送另一个值,但我无法找到如何实现这一点。

 Rx.Observable.create( function(obs) {
  obs.next(1)
  // if value is one, compile 3, if not, respond with 2
  obs.next(someVal)
  obs.onCompleted()
});

1 个答案:

答案 0 :(得分:1)

您发现使用主题和地图更简单:

let src = new Subject<number>();
let other = src.map(v => (v === 1 ? 3 : 2));

other.subscribe(v => console.log(v));

src.next(1);// prints 3
src.next(4);// prints 2