rxjs debounce и интервал
Есть много информации и вопросов о методе debounce RXJS. Но я не могу понять, почему этот самый простой пример не работает:
Rx.Observable.interval(1000)
.debounce(() => Rx.Observable.interval(2500))
.subscribe(result => console.log(result, '!'));
Интервал испускает инкрементный номер каждую 1 секунду (предположим, ----
это одна секунда)
---1---2---3---4---5
---------d---------d
В этом случае я ожидал увидеть 2 and 5
цифры, но это ничего не показывает.
Что я делаю не так?
1 ответ
Решение
debounce
ждет, пока не будет произведен выброс в течение x раз, а затем выдаст последнее значение
-a-b-b-c----a---
----------c----a
Если вы хотите иметь только одно значение на каждые x единиц времени, вы можете посмотреть на buffer
или же window
операторы