У меня есть компонент, в котором я использую событие onWheel для обнаружения прокрутки во всех направлениях (это работает). Моя проблема заключается в том, чтобы предотвратить повторное рендеринг этого компонента, чтобы я мог использовать дроссель из нижнего подчеркивания. js:
Пример
import React, {useState} from 'react';
import { throttle } from 'underscore';
const App = () => {
const [position, setPosition] = useState({x: 0, y: 0});
const updatePosition = throttle((e) => {
e.preventDefault(); // Required for left/right swiping.
setPosition({
x: position.x + e.deltaX,
y: position.y + e.deltaY,
});
}, 1000);
return (
<div className="viewport" onWheel={updatePosition}>
<Box x={position.x} y={position.y} />
</div>
);
};
export default App;
Функция газа здесь не работает, так как каждый раз, когда состояние обновляется компонент обновляется.