18 lines
555 B
JavaScript
18 lines
555 B
JavaScript
import {interval} from 'rxjs/observable/interval';
|
|
import {filter} from 'rxjs/operator/filter';
|
|
import {take} from 'rxjs/operator/take';
|
|
import {map} from 'rxjs/operator/map';
|
|
import {throttle} from 'rxjs/operator/throttle';
|
|
import {takeUntil} from 'rxjs/operator/takeUntil';
|
|
|
|
function test(observable) {
|
|
return observable
|
|
::filter(data => data.someTest)
|
|
::throttle(() =>
|
|
interval(10)
|
|
::take(1)
|
|
::takeUntil(observable::filter(data => someOtherTest))
|
|
)
|
|
::map(someFunction);
|
|
}
|