Estoy tratando de obtener la posición de desplazamiento. Mi código funciona bien, pero cada vez que me desplazo, la función siempre vuelve a representar el componente React. Sé el motivo: cada vez que me desplazo, actualizo la posición de desplazamiento dentro del estado del componente.
export function Home() { const [scrollPosition, setScrollPosition] = useState(0); useEffect(() => { const handleScroll = () => { setScrollPosition(window.scrollY); }; handleScroll(); window.addEventListener("scroll", handleScroll); return () => { window.removeEventListener("scroll", handleScroll); }; }, []); console.log('render function') return null }¿Hay alguna manera de optimizar este código?
Considere usar este gancho personalizado. Lo usé y está súper optimizado. https://github.com/n8tb1t/use-scroll-position