Sometimes, we want to fix *ngIf and *ngFor on same element causing error with Angular.
In this article, we’ll look at how to fix *ngIf and *ngFor on same element causing error with Angular.
How to fix *ngIf and *ngFor on same element causing error with Angular?
To fix *ngIf and *ngFor on same element causing error with Angular, we can move *ngIf
to the ng-container
component.
For instance, we write
<ng-container *ngIf="show">
<div *ngFor="let thing of stuff">
{{ log(thing) }}
<span>{{ thing.name }}</span>
</div>
</ng-container>
to use *ngIf
in the ng-container
component to show the div only when show
is true
.
And then we use *ngFor
in the div to render the items in the stuff
array.
Conclusion
To fix *ngIf and *ngFor on same element causing error with Angular, we can move *ngIf
to the ng-container
component.