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

301
Visualizações
Angular: la condición ngIf muestra los datos en el renderizado inicial

En mi proyecto Angular donde obtengo datos de la API y los muestro en la interfaz. Estoy usando ngIf para mostrar datos, si no hay datos disponibles, se muestra elseNotDone .

El problema al que me enfrento es cuando el componente se recarga, primero veo No Data available durante unos milisegundos y luego se muestran los datos.

¿Cómo puedo asegurarme de que otra condición no se muestre en el renderizado inicial?

 <section *ngIf="data!== undefined && data.length > 0; else elseNotDone"> <h2>Amazon Data</h2> <div> // display data from API </div> </section> <ng-template #elseNotDone> No Data available </ng-template>
about 4 years ago · Juan Pablo Isaza
3 Respostas
Responde à pergunta

0

Esto se debe a que el componente se inicializa antes de que lleguen los datos. Una vez que llegan los datos, el componente puede usarlos.

Recomiendo encarecidamente aprender sobre los solucionadores angulares que evitan que el componente se inicialice antes de que los datos estén disponibles. Esto le permite implementar cosas como cargadores/spinners/etc., que aparecen mientras se obtienen los datos.

EDITAR: De la documentación de Angular: https://angular.io/api/router/Resolve

about 4 years ago · Juan Pablo Isaza Relatório

0

Innecesariamente lo complicaste:

 *ngIf="data !== undefined && data.length > 0; else elseNotDone"

cambiarlo a:

 *ngIf="data && data.length > 0; else elseNotDone"

Para su problema principal: cree una variable isLoaded y envuelva su código en ella:

 <div *ngIf="isLoaded"> .... your code... </div>

Resolverá su problema para mostrar cualquier cosa hasta que se carguen los datos.

about 4 years ago · Juan Pablo Isaza Relatório

0

Envuelva su código en el contenedor ng con la condición isLoaded y debe "verificar" esta variable si obtiene la respuesta de la API

 <ng-container *ngIf="isLoaded"> <section *ngIf="data && data.length > 0; else elseNotDone"> <h2>Amazon Data</h2> <div> // display data from API </div> </section> <ng-template #elseNotDone> No Data available </ng-template> </ng-container>
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