如何在Angular中定义枚举类型以不违反tslint typedef规则

时间:2018-06-12 13:36:15

标签: angular typescript lint tslint

为了能够在模板中使用枚举,我们在ts文件中写下以下代码。

在workflowProgress.ts

export enum WorkflowProgress
{
    cancelled = 0,
    inProgress,
    done
}

在component.ts

export class Component {
   WorkflowProgress = WorkflowProgress;
   x : WorkflowProgress = WorkflowProgress.done;
}
在template.html中

<div *ngIf="x === WorkflowProgress.done">

我们已经启用了typedef规则的tslint。但是tslint正在唠叨这一行WorkflowProgress = WorkflowProgress;

  

[tslint]期望成员变量声明:&#39; WorkflowProgress&#39;有一个typedef(typedef)

我可以通过添加// tslint:disable-next-line:typedef来禁用该规则,但我想知道是否有更好的方法可以做到这一点?

1 个答案:

答案 0 :(得分:6)

您可以使用typeof运算符“查询”枚举类型:

WorkflowProgress: typeof WorkflowProgress = WorkflowProgress