Если вы используете компоненты на основе классов, вы можете использовать componentDidMount
и componentWillUnmount
для добавления и удаления слушателя соответственно, например:
class Hello extends React.Component {
doSomething = () => {}
componentDidMount() {
window.addEventListener('scroll', this.doSomething)
}
componentWillUnmount() {
window.removeEventListener('scroll', this.doSomething)
}
}
Если вы используете хуки, тогда вы можно использовать useEffect
для добавления и удаления прослушивателя следующим образом:
function Hello() {
useEffect(() => {
const doSomething = () => {};
window.addEventListener("scroll", doSomething);
return () => {
window.removeEventListener("scroll", doSomething);
};
}, []);
}