Estoy creando una aplicación simple para probar algunas cosas usando observables y, por alguna razón, cuando envuelvo ese código usando una etiqueta de plantilla ng, el HTML simplemente no aparece.
La razón por la que estoy usando esta plantilla ng antes del div es para usar un * ngIf. Inicialmente, pensé que *ngIf era el problema, pero cuando eliminé esa declaración de la plantilla, todavía no funcionó. Así que el Si no es el problema.
¿Alguna idea?
<!-- If I remove the <ng-template> tag, the HTML is rendered, but with it, it doesn't work --> <ng-template> <div class="messages-container" *ngIf="(messagesService.errors$ | async) as errors"> <div class="messages" *ngFor="let error of errors">{{error}}</div> <mat-icon class="close" (click)="onClose()">close</mat-icon> </div> </ng-template>Editar: cuando uso [ngIf] en lugar de * ngIf funciona, pero todavía no entiendo por qué funciona con [ngIf] y por qué no funciona sin ninguna condición.
sintaxis de estrella en directivas estructurales como aquí *ngIf crea implícitamente una plantilla a partir del elemento en el que se utiliza esta directiva. no es necesario escribir explícitamente <ng-temlate> solo use *ngIf