Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

222
Visualizações
Retraso en la ejecución de Javascript SetInterval al cambiar la pestaña del navegador

Como parte de mi aplicación de reacción, tengo un método setTimeout para ejecutar el temporizador y, si llega a cero, aparecerá un mensaje emergente, que funciona bien siempre que el navegador esté en estado activo, supongamos que cuando cambiamos entre una pestaña del navegador a otro, tuve un problema con la demora en la ejecución de estos intervalos setTimeout, se tarda más en llegar a cero que el configurado o el valor inicial que configuramos.

Digamos que timeoutInterval es 120 segundos como valor predeterminado, luego, si cambiamos otra pestaña, se produjo este problema de latencia de ejecución de setInterval. alguna solución para esto?

A continuación se muestra mi método setInterval para ejecutar el temporizador.

 const [inactiveTimer, setInactiveTimer] = useState(120); useEffect(() => { const inactiveInterval = setInterval(() => { if (timeoutInterval > 0) { setInactiveTimer(timeoutInterval - 1); } else if (timeoutInterval === 0) { setShowModal(true); } }, 1000); return () => { clearInterval(inactiveInterval); }; }, []);
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Cuando una pestaña no está activa, la función se puede llamar a un máximo de una por segundo. Una opción para resolver esto es usar Web Workers, ya que se ejecutan en un proceso separado y, por lo tanto, no se ralentizan.

Otra opción para resolver este problema es piratearla reproduciendo un sonido ~vacío que obligará al navegador a mantener el rendimiento normal.

Más información sobre este problema de desactivación: https://codereview.chromium.org/6577021

Truco de sonido vacío: ¿cómo hacer que JavaScript se ejecute a velocidad normal en Chrome incluso cuando la pestaña no está activa?

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda