Обработка событий мыши в React - PullRequest
0 голосов
/ 16 июня 2020

Я создаю ползунок диапазона на React. Поэтому мне нужно обработать onMouseDown на кнопке, а затем я перемещаю мышь, перемещая кнопку. Затем я хочу обработать событие MouseUp, оно происходит за пределами кнопки.

Вот код:

const [pos,setPos] = useState()
// ...
const onMouseDownHandler = (e) => {
   window.addEventListener("mousemove", e => {setPos(e.clientX)});
   window.addEventListener("mouseup", window.removeEventListener("mousemove", e => {setPos(e.clientX)}))    
}
// ...
<button
onMouseDown={onMouseDownHandler} />
...

Проблема в том, что pos продолжает изменяться, removeEventListener не здесь не работает.

...