ngClass Angular 2枚举

3人

您好,我正在尝试将条件类与枚举一起使用。我之前在html中使用过枚举,ngSwitchCase并且遇到了与现在相同的错误。当我添加一个名为该枚举的属性并将其分配给该枚举时,它将起作用。

工作示例:

                    <ng-container *ngFor="let column of columns" [ngSwitch]="column.dataType">
                    <td *ngSwitchCase="DataType.Text">{{getPropertyValue(row,column.propertyName)}}</td>
                    <td *ngSwitchCase="DataType.Date">date</td>
                    <td *ngSwitchCase="DataType.Number">number</td>
                    <td *ngSwitchDefault>default</td>
                </ng-container>

ts

private DataType = DataType;

不起作用:

            <span *ngClass="(column.sortType === SortType.Ascending)? 'privilege-grid-sortasc': (column.sortType === SortType.Descending)?'privilege-grid-sortdesc':'privilege-grid-sortnone'"></span> 

我也尝试过 [ngClass] ="{'class-name': var === enum,...}"

ts

   private SortType = SortType;

错误信息:

无法读取未定义的属性“升序”

亚当

我认为您的问题必须出在其他地方。我使用带有枚举的[ngClass]绑定重新创建了您的方案,它对我来说很好用:

[ngClass] ="{'class-name': var === enum,...}"

在第二种情况下,您的模板是否在单独的.html文件上,而不在第一种情况下?我遇到了模板文件无法读取组件文件上的私有变量的问题。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章