2016-11-18 103 views
-2

大赤貧元素的數組後端環路我創建簡單的數字排列,並使用rxjs管理UI和後端環路下面是我的代碼:Rxjs與觀察到的

var array100 = new Array(9703) 
    .fill('x') 
    .map((v, i) => i); 

Rx.Observable.from(array100) 
    .delayWhen(function(v){return Rx.Observable.timer(v*50)}) 
    .buffer(Rx.Observable.timer(250, 250)) 
    .subscribe(chunk => { 
    console.log('chunk ', chunk); 
    }); 

創建我試過這個示例應用程序後,把這個帶到我的應用程序中,用一些大的abject元素數組來處理UI和後端循環。但是當我嘗試使用它時,該數組可以被觀察到,但它不會分塊數組。它通過沒有分塊的方法。我也無法調試它..

這是如何在RxJS中實現的?

回答

1

我建議你看看提供的運營商。您嘗試創建的許多功能已經可用。

,用於延遲從陣列元件的發射可以使用: .flatMap(val => Rx.Observable.just(val).delay(50)/*ms*/)

對於分塊您的陣列可以使用計數(如果定時不是問題).bufferWithCount(50)/*elements per chunk */,定時.bufferWithTime(250/*ms*/)或兩者組合(.bufferWithTimeOrCount(250 /*ms*/, 50 /*elements */)