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

162
Vistas
¿Cómo detener async for loop que ya está en la pila de llamadas?

Cuando el usuario presiona el botón de búsqueda por primera vez, funciona como debería y toma aproximadamente 30 segundos obtener todos los datos, por lo que si el usuario decide hacer clic en el botón de búsqueda nuevamente con un nuevo término de búsqueda, todo se estropea porque el bucle asíncrono anterior no es ya hecho. Ayude a encontrar una solución para eliminar la pila de llamadas anterior y reiniciar el proceso sin continuar con el ciclo anterior.

 searchButton.addEventListener("click", (e) => { e.preventDefault(); getPrice(data); } async function getPrice(data) { for (singleResult of data) { await fetchWeb(Title) } }

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

0

Utilice un contador de clics global:

 let calls = 0; searchButton.addEventListener("click", (e) => { e.preventDefault(); getPrice(data, ++calls); } async function getPrice(data, id) { for (singleResult of data) { if (id !== calls) break; // ^^^^^^^^^^^^^^^^^^^^^^^^ await fetchWeb(Title) } }

Tan pronto como cambien las calls , el bucle actualmente activo se detendrá.

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