尝试添加带有对象的样式适用于[ngClass],但不适用于[class]



大家好吗?

我正试图在模板的div中添加一些类。Angular Mainsite说,关于造型:

NgClass指令可以用作直接[class]绑定的替代方法。然而,使用上面没有NgClass的类绑定语法是首选,因为由于Angular中类绑定的改进,NgClass不再提供显著的值,并且可能最终在将来被删除。

所以,我正在尝试做:

<div [class]="{class1:condition,class2:condition}"></div>

<div [class]="{'class1':condition,'class2':condition}"></div>

但它不起作用。但是使用[NgClass]而不是[class],它可以完美地运行。有人知道为什么?我使用的是Angular 8.2.14和Angular Core 8.3.22。

提前感谢!

ngClass和class的使用方式完全不同。

ngClass正在等待一个对象,这就是您的代码使用此指令的原因。

另一方面,类只是一个HTML属性。如果你想添加有条件的类,你必须这样做:

<div [class.class1]="condition"
[class.class2]="condition"></div>

希望能帮你一点忙,再见!

相关内容

最新更新