假设我有一个对象列表,我想更改某个对象样式。我正在利用ngClass和点击事件来切换CSS类。如何动态添加css类到某个元素?
<ul class="container">
<li class="item" [ngClass]="{'active': isClassVisible }" (click)="isClassVisible = !isClassVisible">1</li>
<li class="item" [ngClass]="{'active': isClassVisible }" (click)="isClassVisible = !isClassVisible;">2</li>
<li class="item" [ngClass]="{'active': isClassVisible }" (click)="isClassVisible = !isClassVisible;">3</li>
<li class="item" [ngClass]="{'active': isClassVisible }" (click)="isClassVisible = !isClassVisible;">4</li>
</ul>
然后在组件我有
export class MyComponent {
isClassVisible: false;
}
和CSS
.active {
background: black;
}
这种方法
然而,当我点击内部列表中的元素上,CSS类适用于所有的他们,但不是我点击的元素。
谢谢,队友。如果我明白了,通常指令是用来向DOM元素添加行为,而组件需要它们自己的模板。 –
更干净的方式来做同样的事情+1 –