Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

120
Vistas
Diferentes intervalos para setTimeout en useEffect

Estoy tratando de lograr una situación en la que una función dentro de setTimeout se ejecuta después de X segundos por primera vez , y luego regularmente en Y intervalo.

 useEffect(() => { let firstTime = true; const timer = setTimeout(() => { getValue(id).then((res) => { setValue(res); }); if (firstTime) { firstTime = false; } }, firstTime ? 30000 : 60000); return () => clearTimeout(timer); }, [])

Sin embargo, esto no funciona, ya que establece firstTime en falso antes de ejecutar la función. ¿Hay alguna manera de lograr graciosamente el resultado? ¿Es incluso posible con setTimeout ?

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Puede usar una variable como el retraso de setTimeout . En este caso, establecería firstTime en el retraso que desea usar la primera vez (30000), y luego usaría el temporizador interno if (firstTime == 30000) { firstTime = 60000; } . Usar un nombre de variable diferente aquí tendría sentido. Luego establezca el retraso de setTimeout en solo firstTime como }, firstTime);

Con suerte, esto es realmente lo que querías.

 useEffect(() => { let firstTime = 30000; const timer = setTimeout(() => { getValue(id).then((res) => { setValue(res); }); if (firstTime == 30000) { firstTime = 60000; } }, firstTime); return () => clearTimeout(timer); }, [])

Respuesta anterior (incorrecta):

Puede usar setTimeout con un retraso inicial para inicializar un setInterval , que se repetirá las veces posteriores en un intervalo diferente.

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda