typescript - Como definir tipo enum no Angular sem violar a regra typedef do tslint
Para poder usar enumerações em template, escrevemos os códigos abaixo no arquivo ts.
em workflowProgress.ts
export enum WorkflowProgress
{
cancelled = 0,
inProgress,
done
}
em component.ts
export class Component {
WorkflowProgress = WorkflowProgress;
x : WorkflowProgress = WorkflowProgress.done;
}
em template.html
<div *ngIf="x === WorkflowProgress.done">
e já temos o tslint com a regra typedef habilitada. mas o tslint está reclamando sobre esta linha WorkflowProgress=WorkflowProgress;
[tslint] esperado member-variable-declaration: 'WorkflowProgress' deveria ter um tipo definido (typedef)
Posso desativar a regra adicionando // tslint:disable-next-line:typedef, mas estava me perguntando se existe uma maneira melhor de fazer isso?
Resposta #1
Você pode usar o operador typeof para "consultar" o tipo de enumeração:
WorkflowProgress: typeof WorkflowProgress = WorkflowProgress
