Angular 2中的ngClass指令用于动态地添加或移除HTML元素的CSS类。它可以根据条件来决定是否添加某个CSS类。
在使用ngClass时,如果条件表达式不被计算,可能是由于以下几个原因:
- 表达式错误:请确保表达式语法正确,没有拼写错误或语法错误。可以通过在控制台查看错误消息来检查表达式是否正确。
- 表达式未绑定到组件属性:ngClass的条件表达式应该绑定到组件的属性,以便在属性值发生变化时触发表达式的重新计算。请确保将表达式绑定到组件的属性。
- 表达式计算结果为undefined或null:如果表达式计算结果为undefined或null,ngClass将不会添加任何CSS类。请确保表达式计算结果不为undefined或null。
- 表达式计算结果为布尔值:ngClass的条件表达式应该返回一个布尔值,以决定是否添加CSS类。如果表达式计算结果不是布尔值,ngClass将不会添加任何CSS类。
- 表达式计算结果为对象:ngClass还支持表达式计算结果为对象的情况。如果表达式计算结果是一个对象,ngClass将根据对象的键值对来决定是否添加CSS类。请确保表达式计算结果是一个对象,并且对象的键是CSS类名,值是布尔值。
总结起来,当Angular 2中的ngClass在检查条件时不计算你的表达式时,你应该检查表达式的语法是否正确,是否绑定到组件的属性,以及表达式的计算结果是否为布尔值或对象。
关于Angular 2的ngClass更详细的信息和示例,你可以参考腾讯云的Angular 2开发文档:Angular 2开发文档 - ngClass