有什么方法可以使用* ngIf来检查元素是否具有某些类?我尝试使用
<img *ngIf="[class.imgView]" class="imgView" src="..">
引发错误的消息无法读取未定义的imgView属性。
有什么方法可以用 Angular 实现吗?
最佳答案
如果某个 bool 值为true,则创建一个返回所需类的函数:
returnClass = true;
getClass() {
if(this.returnClass) {
return "myView";
} else {
return "";
}
}
并更改您的 View :
<img *ngIf="returnClass" [ngClass]="getClass()" src="..">
现在,如果
returnClass
为true,您就知道img
将具有所需的类,因此您可以将returnClass
传递给*ngIf
您还可以通过以下方式删除该类:
this.returnClass = false
,这也将隐藏该元素。这对于许多类(class)来说将变得乏味,但对于少数几个类(class)来说将是合理的。