【发布时间】:2020-05-08 15:23:33
【问题描述】:
当另一个字段为touched 和invalid 时,我正在尝试更改i 标记样式,如下所示,但i 标记并没有真正改变,只有input 标记发生了变化。
input.ng-touched.ng-invalid
{
border-color: red;
}
input.ng-valid
{
border-color: green ;
}
.green-icon
{
color:green;
}
.red-icon
{
color:red;
}
<div class="form-group">
<div class="input-group">
<div class="input-group-prepend">
<div class="input-group-text bg-white">
<i class="fas fa-user circle" [class.green-icon]="CardOwnerName.valid" [class.red-icon]="CardOwnerName.invalid && CardOwnerName.touched"></i>
</div>
</div>
<input #CardOwnerName formControlName="CardOwnerName" name="CardOwnerName" class="form-control" placeholder="Card Owner Name" required>
</div>
</div>
我假设我的 Angular 版本缺少一些东西。也许有些东西被弃用了?
【问题讨论】:
-
你使用的是模板驱动表单还是响应式表单
-
我正在使用响应式表单
-
将
CardOwnerName.valid更改为myForm.controls.CardOwnerName.valid。或者重命名模板别名。