angular - Angler 5:将类添加到选中复选框的特定索引 LI
问题描述
更改时,如果选中复选框,我想在 LI 上为特定索引添加活动类,如果未选中,则删除活动类。
TS文件
test = [];
HTML 文件
<li *ngFor="let item of test; let i = index">
<input type="checkbox" (change)="change($event, item, i)">
<span class="active"> {{item}} </span>
</li>
解决方案
如果要为所有检查的元素添加一个类,则需要将检查的值存储在一个变量中。通常我们迭代一个对象数组,但是如果你迭代一个字符串数组,你需要声明一个新变量,它是一个布尔数组
checked:boolean[]=[];
然后,使用 [ngModel]
<li *ngFor="let item of test; let i = index">
<input type="checkbox" [(ngModel)]="checked[i]" >
<span [ngClass]="{'active' : checked[i]}"> {{item}} </span>
</li>
推荐阅读
- javascript - JavaScript:多个参数
- windows-10 - 在 2018 年 5 月 Windows 10 功能更新 1803 之后,邮槽上的 CreateFile 失败并出现错误 53 ERROR_BAD_NETPATH
- c# - 无法以编程方式将新包添加到新项目
- python - Python argparse 错误:错误:参数计数:无效的 int 值
- javascript - 同步执行和 setTimeout()
- java - 在非 Android 应用程序中使用 newTrustedTransport 方法未找到 KeyStoreException JKS 实现
- eclipse - 在 STS 包资源管理器中显示 Maven 排除的目录?
- powershell - 使用 Powershell 在 IE 中写入 TextArea
- css - 附加到 SCSS @mixin 的奇怪字符
- django - 来自 hostgator 的 Heroku 自定义域