我收集可觀察到的所有事件的data
陣列:如何在零時間內獲得RxJS可觀察事件?
const obs$ = Rx.Observable
.interval(500)
.take(4);
let data = [];
const start = performance.now();
obs$.subscribe(
value => {
data.push({
time: performance.now() - start,
data: value
});
},
() => {},
() => {
console.log(JSON.stringify(data, null, 2));
}
);
<script src="https://unpkg.com/[email protected]/bundles/Rx.js"></script>
是否可以「預見未來」,並獲得同樣的data
陣列,而無需等待2秒?爲了澄清,我試圖找到一種方法來用某個定製的定時器/調度程序以某種方式打包給定的Observable(上述示例中的obs$
),以便我可以立即獲取事件。
我真的不知道你在問什麼。 ['interval'](http://reactivex.io/rxjs/class/es6/Observable.js~Observable.html#static-method-interval)以它們之間指定的時間間隔發出一系列整數。如果您希望立即發出整數序列,則可以使用['range'](http://reactivex.io/rxjs/class/es6/Observable.js~Observable.html#static-method-range) 。 – cartant
@cartant我試圖找到一種方式來包裝某種給定的Observable('obs $'在上面的例子中)與自定義計時器/調度程序,所以我可以立即得到事件。 –