代码之家  ›  专栏  ›  技术社区  ›  Reza

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

  •  3
  • Reza  · 技术社区  · 6 年前

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

    工作流程进度.ts

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

    组件内.ts

    export class Component {
       WorkflowProgress = WorkflowProgress;
       x : WorkflowProgress = WorkflowProgress.done;
    }
    

    在template.html中

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

    我们已经启用了typedef规则的tslint。但Tslint一直在唠叨这句台词 WorkflowProgress = WorkflowProgress;

    [tslint]需要成员变量声明:“workflowprogress”具有typedef(typedef)

    我可以通过添加 // tslint:disable-next-line:typedef 但我想知道有没有更好的办法?

    1 回复  |  直到 6 年前
        1
  •  6
  •   Aleksey L.    6 年前

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

    WorkflowProgress: typeof WorkflowProgress = WorkflowProgress