标签: javascript sequence system.reactive lazy-evaluation rxjs
我想知道写一个Observable序列最优雅的方法是什么,每次都会产生任意数量的新计算结果。我想出了以下内容:
var obs = Rx.Observable.create(function(o) { o.onNext(Math.random()); o.onCompleted(); }).repeat(2000);
这将在订阅时创建2000个新的随机值。这解决了它,但它并不优雅。我更喜欢基于take而不是重复的解决方案。
take
答案 0 :(得分:1)
我猜你可以使用Rx.Observable.generate。关于它,您可以在此处阅读http://xgrommx.github.io/rx-book/content/observable/observable_methods/generate.html或此处https://github.com/Reactive-Extensions/RxJS/blob/master/doc/api/core/observable.md#rxobservablegenerateinitialstate-condition-iterate-resultselector-scheduler