Что такое discriminated unions?

Middle
235 просмотров
AFK Offer AI

Discriminated union — это объединение типов с общим полем-дискриминантом. Например: type Shape = { kind: "circle"; radius: number } | { kind: "square"; side: number }. TypeScript по значению kind сужает тип в if/switch — внутри case "circle" доступен radius. Это самый мощный паттерн для моделирования вариантов: состояния запроса (loading/success/error), actions в reducer, API-ответы. Заменяет класс-иерархии и перечисления.

Следующий вопрос

Чем React Server Components отличаются от SSR?