Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

207
Views
Window.scroll solo funciona una vez (React.js)

Estoy creando un componente React simple para recordar dónde se encuentra en la página y ubicarlo allí cuando regrese.

Aquí está el código:

 function ScrollCache() { window.scroll(0, parseInt(localStorage['scroll'])); document.addEventListener('scroll', function (e) { if (window.scrollY != 0) { localStorage['scroll'] = window.scrollY.toString(); } }) return (<></>) }

Básicamente, almacena en caché la última posición de desplazamiento conocida y usa window.scroll(x, y) para desplazarse a esa posición. Verifiqué que localStorage funciona según lo previsto con un archivo console.log inmediatamente antes de window.scroll . También probé un 100 estático para la coordenada y. Pase lo que pase, solo se desplaza una vez al recargar y nunca más cuando estoy navegando.

Estoy usando React Router para ir entre páginas web. Cualquier ayuda es apreciada

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

No necesita agregar el detector de eventos de desplazamiento cada vez que desee almacenar en caché el desplazamiento.

En su lugar, intente esto:

 const [scrollPosition, setScrollPosition] = useState(0); useEffect(() => { window.addEventListener("scroll", handleScroll, { passive: true }); return () => { window.removeEventListener("scroll", handleScroll); }; }, [scrollPosition]); useEffect(() => { localStorage['scroll'] = scrollPosition.toString(); }, [scrollPosition); const handleScroll = () => { const position = window.pageYOffset; setScrollPosition(position); };
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!