如何在 Angular 中定义枚举类型以不违反 tslint typedef 规则
How to define enum type in Angular to not violating tslint typedef rule
为了能够在模板中使用枚举,我们在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] expected member-variable-declaration: 'WorkflowProgress' to have a typedef (typedef)
我可以通过添加 // tslint:disable-next-line:typedef
来禁用规则,但我想知道是否有更好的方法来做到这一点?
您可以使用 typeof
运算符来 "query" 枚举类型:
WorkflowProgress: typeof WorkflowProgress = WorkflowProgress
为了能够在模板中使用枚举,我们在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] expected member-variable-declaration: 'WorkflowProgress' to have a typedef (typedef)
我可以通过添加 // tslint:disable-next-line:typedef
来禁用规则,但我想知道是否有更好的方法来做到这一点?
您可以使用 typeof
运算符来 "query" 枚举类型:
WorkflowProgress: typeof WorkflowProgress = WorkflowProgress