Получение ошибки с ngIf в Angular
Я использую angular и хочу отображать данные из переменной, которая находится в форме json .Я могу сделать это для *ngfor, но также я хочу поставить условие, при котором он проверяет, является ли msg.кто= = "бот".Я делаю это, используя:
<div class="UserWrapper" *ngFor="let msg of msgs" ngIf="msg.who == 'User ">
<div class=""></div>
<div class = "speech-bubble1 z-depth-5"><p>{{msg.msg}}</p>
<p class="timeRight">{{msg.time}}</p>
</div>
</div>
Я не знаю, как использовать ng, если другой способ, но при этом я получаю следующую ошибку.
ERROR Error: StaticInjectorError(AppModule)[NgForOf -> TemplateRef]:
StaticInjectorError(Platform: core)[NgForOf -> TemplateRef]:
NullInjectorError: No provider for TemplateRef!
Как я могу проверить данное условие
1 ответов
вы не можете использовать ngFor
и ngIf
в той же element
, поэтому замените его на ng-container
, также несколько ошибок, таких как *ngIf
вместо ngIf
и вы должны использовать ===
когда вы проверяете для типа
изменить ваш код следующим образом:
<ng-container *ngFor="let msg of msgs">
<div *ngIf="msg.who === User" class="">
<div class = "speech-bubble1 z-depth-5"><p>{{msg.msg}}</p>
<p class="timeRight">{{msg.time}}</p>
</div>
</ng-container>