Ребята, у меня есть приложение, использующее RxJS для обработки событий мыши. Я складываю эти события в более сложные наблюдаемые «жесты». Один из таких жестов - «встряхнуть».
Я пытаюсь составить следующие серии событий:
mousedown
mousemove left
mousemove right
mousemove left
mousemove right
mouseup
Я обнаружил, что
mousedown
mouseup
mousemove left
mousemove right
mousemove left
mousemove right
также вызывает тот же результат.
Я сделал скрипку, демонстрирующую проблему на codepen.
Мой вопрос в целом: как вы выражаете в RxJS, что наблюдаемый объект, такой как mouseup, должен отменять и перезапускать состав наблюдаемого?
В качестве еще одного примера проблемы (из той же скрипки) следующие события
mousedown
mouseup
mousedown
mouseup
mousedown
mousemove left
mousemove right
mousemove left
mousemove right
Результат в 3 событиях встряхивания. Я бы хотел, чтобы это привело к одному.