角度[ngClass]条件和函数结合在一起

时间:2019-06-10 10:09:59

标签: javascript html angular typescript

是否可以在[ngClass]中将条件语句和函数组合在一起

 [ngClass]="tagType.tagColor ? 'tags-button' : 'tags-button tag-colorless' &&  getStyleClasses()"

我在上面的语法上遇到错误,是否存在将条件语句和函数一起包含的正确方法?该函数应仅求值而无需条件

1 个答案:

答案 0 :(得分:1)

您正在评估'tags-button tag-colorless',这始终是正确的,因此结果始终由getStyleClasses()代替。

在JavaScript中,返回评估的最后一个值,例如:

var x = true && 'foo'; 

分配字符串foo

var x = false && 'bar';

分配布尔值false,因为第一个值是伪造的,第二个值没有得到求值。

在您的情况下,'tags-button tag-colorless'是一个字符串,非空字符串始终是真实的,因此就像上面的第一个示例一样。

也许您是要同情,所以用&&代替+