Skip to content

Модификатори на Mapped типове

Модификаторите на Mapped типове в TypeScript позволяват трансформиране на свойства в рамките на съществуващ тип:

  • readonly или +readonly: Прави свойството в mapped типа само за четене.
  • -readonly: Позволява свойството в mapped типа да бъде променяемо.
  • ?: Определя свойството в mapped типа като опционално.

Примери:

type ReadOnly<T> = { readonly [P in keyof T]: T[P] }; // Всички свойства са маркирани като само за четене
type Mutable<T> = { -readonly [P in keyof T]: T[P] }; // Всички свойства са маркирани като променяеми
type MyPartial<T> = { [P in keyof T]?: T[P] }; // Всички свойства са маркирани като опционални