TGViewer
WebDev+ | Веб-разработка WebDev+ | Веб-разработка @webdev_plus · 7.9K subscribers
Post #1030 1.18K
TypeScript: единый источник для значений, меток и сравнений

export const ORDER_TYPES = {
product: "Product Order",
service: "Service Order",
} as const;

// Тип, представляющий ключи ORDER_TYPES
export type OrderType = keyof typeof ORDER_TYPES;

// Опции для дропдауна
export const ORDER_TYPE_OPTIONS = Object.entries(ORDER_TYPES).map(
([value, label]) => ({ value: value as OrderType, label }),
);

// Пример использования:
// - Сравнение: if (type === "product")
// - Получить метку: ORDER_TYPES[type]
// - Для дропдауна: <Select options={ORDER_TYPE_OPTIONS} />


@WebDev_Plus
More from @webdev_plus
  1. Oct 9, 2026Принёс находку: sshx. Всего одна команда, и у вас в браузере открывается реплика локальног…
  2. Oct 9, 2026Огромная коллекцию из 1500+ отобранных API для ваших проектов, от погоды и карт до генерат…
  3. Oct 8, 2026Набор полезных пользовательских CSS-функций, который работает на новой нативной директиве…
  4. Oct 8, 2026Как работают очереди в контексте HTTP-запросов Разбираются основные стратегии очередей: FI…
  5. Oct 7, 2026Разработчики Next.js: добавьте эти 4 строки в ваш .vscode/settings.json, чтобы сразу прока…
  6. Oct 7, 2026Полезное расширение для Chrome «Responsive Viewer» Помогает веб-разработчикам и дизайнерам…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →