Observables基础知识

时间:2017-12-26 23:33:18

标签: javascript rxjs

我相信我有一个适用于Observables的用例,但我不确定如何实现,因为Observables不是最直观的概念。 假设我有3个数字:let a: number, b: number, c: number;我希望在他们改变时监控它们。 if((a + b + c) / 3 === 0)) return true else false。如何创建一个监视这些数字并使用它的观察者我可以获得boolean值?

1 个答案:

答案 0 :(得分:3)

这是一个例子。在现实生活中aSubjectbSubjectcSubject是您构建或从您的框架或选择中获取的常规Observable流。

在我的演示中,我使用BehaviorSubject,因为从技术上讲,Subjects Observables

代码的 Setup 部分创建三个源流,formulaObservable检查a,{{1}的最后已知值的总和},b除以c3。请注意,0在某种意义上与“普通”JS中的aSubject.next(1)有些相似。关键区别在于a = 1正在Observable流中创建甚至

.next()运算符创建一个新的Observable,用于查看 n 输入的Observable流,并计算这些n个流的最后已知值的某些函数。

combineLatest()

希望,这有帮助。

P.S。您可以使用交互式RxJsMarbles来了解它们如何更好地工作。请注意,彩球是可拖动的。

P.P.S。这是一个好问题,但我认为你的downvotes来自你没有进行研究的事实(没有在问题本身发布的代码),或者因为你没有在StackOverflow上搜索。