我有一个带有* ngFor的div来循环一系列消息。
<div *ngFor="let message of messages; let i=index"
[focused]="i === activeIndex;" [ngClass]="{'message-list-active': activeIndex === i }"
(click)="onAddtoMessage(message.id); activeIndex = i"></div>
我在焦点项目上应用class "message-list-active"
,此消息将颜色更改为蓝色。
点击时我点击了一下我可以传递消息ID。
问题是如何通过不点击来传递ID,而是传递具有&#39; message-list-active&#39;应用。因为将来可以默认选择随机消息,我需要它们的ID。
答案 0 :(得分:3)
使用[ngClass]
<div *ngFor="let message of messages; let i=index"
[focused]="i === activeIndex;" [ngClass]="{
'message-list-active': activeClass(i, message)
}"
(click)="onAddtoMessage(message.id); activeIndex = i"></div>
activeClass(index, message){
if(index === this.activeIndex){console.log(message.id)}
return index === this.activeIndex;
}