Определение настраиваемого типа для вложенной структуры, все из которых имеют свойства значения и метки

#typescript #types #typescript-typings

#машинописный текст #типы #typescript-типизации

Вопрос:

Я использую typescript для нашего проекта, и мне нужно придумать тип для следующей структуры, которая может иметь любое количество ключей, внутри каждого ключа значение и метка фиксированы для всех параметров, и они могут быть любым значением строкового типа.

 const MY_OPTIONS = {
  "keep same": {
    value: "keep",
    label: "Option 1 label text"
  },
  "select new": {
    value: "new",
    label: "Option 2 label text"
  }
};
 

Ответ №1:

Это должно быть похоже :

 interface MY_OPTIONS{
  [key:string]: {
    value: string,
    label: string
  }
};
 

Ответ №2:

Альтернатива:

 type Option = {
  value: string,
  label: string
}
type Options = Record<string, Option>;