Как я могу использовать TypeScript, перечисляющий значения в качестве типа?

#typescript #types #enums #enumeration

#машинописный текст #типы #перечисления #перечисление

Вопрос:

Как я могу использовать значения перечисления typescript в качестве типа для templateTypeId in ISupportedTemplateType . Значения равны 1, 2, 3, и я хочу, чтобы это был тип templateTypeId

 export enum ETemplateType {
  'Cover Letter' = 1,
  'Wire Instructions' = 2,
  'Amendment' = 3,
}

export interface ISupportedTemplateType {
  templateTypeId: number; // HOW CAN I USE ENUM HERE?
  templateTypeName: keyof typeof ETemplateType;
}
 

Ответ №1:

Ты просто… используешь это:

 export interface ISupportedTemplateType {
  templateTypeId: ETemplateType;
  templateTypeName: keyof typeof ETemplateType;
}
 

Тогда это работает нормально:

 // works
const obj: ISupportedTemplateType = {
    templateTypeId: ETemplateType['Cover Letter'],
    templateTypeName: 'Cover Letter'
}
 

Игровая площадка