我根据使用[ngClass]
的情况使用indexOf
。如果disabled
的结果不等于-1,我正在使用indexOf
类。如果它等于-1,那么我正在使用enabled
类。我的代码如下:
<a (click)="selectLocationId(location.pk_location_id, location.locationname, location.locationcode)"
[ngClass]="{
'disabled' : disabledLocations.indexOf(location.pk_location_id)!= -1,
'enabled' : disabledLocations.indexOf(location.pk_location_id) === -1
}">
{{ location.locationname + location.pk_location_id + disabledLocations[0]}}
</a>
使用此代码,即使值存在于数组中,它也将返回indexOf
的结果为-1。因为我应该在引号中传递值,所以如果加上引号,则会出现以下错误:
模板解析错误:意外字符“ EOF”(模板中是否有未转义的“ {”?使用“ {{'{'}}””)进行转义。)(“ **
我尝试了以下方法,但遇到了相同的错误:
1)
[ngClass]="{
'disabled' : disabledLocations.indexOf(""+location.pk_location_id+"")!= -1,
'enabled' : disabledLocations.indexOf(""+location.pk_location_id+"") === -1
}">
{{ location.locationname }}
</a>
2)
[ngClass]="{
'disabled' : disabledLocations.indexOf("'"+location.pk_location_id+"'")!= -1,
'enabled' : disabledLocations.indexOf("'"+location.pk_location_id+"'") === -1
}">
{{ location.locationname }}
</a>
3)
[ngClass]="{
'disabled' : disabledLocations.indexOf("location.pk_location_id")!= -1,
'enabled' : disabledLocations.indexOf("location.pk_location_id") === -1
}">
{{ location.locationname }}
</a>
4)
[ngClass]="{
'disabled' : disabledLocations.indexOf('location.pk_location_id')!= -1,
'enabled' : disabledLocations.indexOf('location.pk_location_id') === -1
}">
{{ location.locationname }}
</a>
如何解决这个问题?