2016-08-12 4 views
0

Zum Beispiel habe ich eine Observable, die alle 5 Sekunden einen 10-Sekunden-Timer ausgibt. Ich kann Scan verwenden, um eine beobachtbare zu erstellen, die ein Array aller inneren Observablen emittiert emittiert bisher:Sammeln der derzeit unvollständigen Observablen in einer rxjs-Observablen höherer Ordnung

tick = 5000 
tock = 1000 
timers = Observable.interval(tick).scan((acc, next) => { 
    let timer = Observable.interval(tock).take(10); 
    return acc.concat([timer]); 
}, []); 

Aber was, wenn ich es emittieren möchte ein Array aller auszusenden „leben“ Timer (dh solche, die habe ich noch nicht complete genannt)?

Hier ist ein beschissene ascii Marmor Diagramm, was ich denke an:

-A--B----- 
    \ \ 
    \ \ 
    \ x 
    x 
| | | 
[A][A,B] [] 

Gibt es eine Möglichkeit, dies mit Hilfe der Standard-Operatoren zu tun, oder ist das nur nicht idiomatische, was zu versuchen mit dem zu tun rxjs?

Antwort

Verwandte Themen