Angular [ngClass] 将一行 if 语句转换为多条 if

Angular [ngClass] convert one line if statement to multiple if

我为我的项目找到了 [ngClass] 解决方案。密码是

[ngClass]= (controlDir && controlDir.control && controlDir.control.touched) ? (!controlDir.control.valid) ? 'is-invalid' : 'is-valid' : null"

这段代码运行良好。但是我想把它转换成喜欢这种模式。

[ngClass]="{'is-invalid': **statement**, 'is-valid': **statement**}"

我该如何拆分?

您可以尝试以下方法:

[ngClass]="{
     'is-invalid': controlDir?.control?.touched && !controlDir.control.valid,
     'is-valid': controlDir?.control?.touched && controlDir.control.valid 
}"