<div *ngFor="let message of messages">
<div *ngIf="message.user===user">
</div>
<input [(ngModel)]="message" />
<button (click)="sendMessage()">Send</button>
此处user是我在组件中指定的变量。这是一个字符串值&#39; user1&#39;。如果message.user === user1
那么我需要展示一些东西,但它不起作用。
答案 0 :(得分:1)
根据您当前的代码块,您将message
(对象实例)绑定到input
[(ngModel)]
*ngFor
,这将导致error
当您在input
中输入一个字符时,它会将message
(对象)转换为字符串,然后丢失原始字段(例如user
)。也许这就是你目前情况的原因。
这里很简单 demo 可能有助于摆脱这种情况。
答案 1 :(得分:0)
你需要这样的基本代码......至少。
<div *ngFor="let message of messages">
<div *ngIf="message.user === user">
user: {{ message.user }}
</div>
</div>
<input [(ngModel)]="message" />
<button (click)="sendMessage()">Send</button>
你的组件也应该有“消息”道具。
答案 2 :(得分:0)
我提供了一些演示..因为你没有添加你的.ts文件只是通过这个: https://angular.io/docs/ts/latest/api/common/index/NgIf-directive.html
答案 3 :(得分:0)
对不起那些错误只是因为我错过了关闭一个div感谢您的回复