我无法完成这项工作
export class DataTableComponent implements OnInit,OnChanges {
public static readonly INPUT = 1;
public static readonly DROP_DOWN = 2;
public static readonly DATE_RANGE = 3;
public static readonly PRODUCT_INPUT = 4;
如果我使用DataTableComponent.INPUT,我得到
“INPUT不是未定义的一部分”错误
所以在模板中没有定义类名
但是当我删除类名时,INPUT似乎也未定义
<div [ngSwitch]="column.type">
<ng-container *ngSwitchCase="INPUT">
</ng-container>
<ng-container *ngSwitchCase="DROP_DOWN">
</ng-container>
<ng-container *ngSwitchCase="DATE_RANGE">
</ng-container>
<ng-container *ngSwitchCase="PRODUCT_INPUT">
</ng-container>
<ng-container *ngSwitchDefault>
missing column.type
</ng-container>
</div>
如何在ngSwitches中使用预定义常量?
感谢
答案 0 :(得分:0)
Angular中模板表达式的范围也是它所关联的类 - 不幸的是不是静态成员。如果你需要它们是静态的,你可以在类文件中用getters
包装它们,如下所示:
get input () {
return DataTableComponent.INPUT;
}
这是显示此方法的PLUNKER