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

129
Vistas
Hice todo lo posible para detener la duplicación de datos en la solicitud http continua haciendo clic en el botón Actualizar (para ese componente en particular) Angular 5

El siguiente es mi archivo .ts para el componente de alarma y sobre HTML. Estoy usando un simple *ngFor sobre CriticalObject.siteList para mostrar los registros. Este no es el código original. Lo he simplificado, pero el problema al que me enfrento es que al hacer clic riguroso en el botón de actualización (activa la solicitud HTTP), la lista agrega nombres de sitios duplicados y eso no debería suceder. He oído hablar del tiempo de rebote, shareReplay y de intentar aplicar aquí, lo que ni siquiera tiene sentido aquí. NOTA: Tengo que activar la solicitud HTTP cada vez que se hace clic en el botón de actualización. Ansiosamente esperando ayuda.

 criticalObject.siteList = []; siteList = ["c404", "c432"]; onRefresh() { this.criticalObject.siteList = []; this.siteList.forEach(elem => { getAlarmStatus(elem); }) } getAlarmStatus(item) { critical_list = []; alarmService.getAlarmStatusBySite(item.siteName).subcribe(data => { if(data) { // do some calculations if(this.criticalObject.siteList.length === 0) { this.criticalObject.siteList.push({ siteName = item.siteName; }) } this.criticalObject.siteList.forEach((elem, idx) => { if(elem.siteName === item.siteName) { return; } else if(idx === this.criticalObject.siteList.length - 1) { this.criticalObject.siteList.push({ siteName = item.siteName; }) } }) } } })
about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Cometí un error tonto, soy nuevo en JavaScript, descubrí que no puede regresar de un ciclo forEach y es por eso que estaba obteniendo registros duplicados, la declaración de devolución en forEach actúa como una continuación en JavaScript.

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