So erstellen und verwenden Sie TypeScript-Hilfstypen

TypeScript bietet eine Reihe von Hilfstypen, die das Transformieren und Verwalten vorhandener Typen erleichtern. Diese integrierten Hilfstypen ermöglichen es Entwicklern, Typen auf verschiedene Weise zu bearbeiten, was dazu beiträgt, Code zu vereinfachen und Wiederholungen zu vermeiden. In diesem Handbuch werden einige der gängigsten Hilfstypen und ihre Erstellung und Verwendung in einem TypeScript-Projekt erläutert.

Was sind TypeScript-Dienstprogrammtypen?

Hilfstypen in TypeScript sind vordefinierte Typen, die bei der Transformation anderer Typen helfen. Sie können verwendet werden, um neue Typen auf der Grundlage vorhandener Typen zu erstellen, indem Eigenschaften ausgewählt, weggelassen oder geändert werden. Sie spielen eine wesentliche Rolle bei der Aufrechterhaltung sauberen, wiederverwendbaren Codes.

Häufig verwendete TypeScript-Hilfstypen

Hier sind einige der am häufigsten verwendeten TypeScript-Dienstprogrammtypen:

  • Partial<T> – Macht alle Eigenschaften vom Typ T optional.
  • Erforderlich<T> – Macht alle Eigenschaften vom Typ T erforderlich.
  • Readonly<T> – Macht alle Eigenschaften vom Typ T schreibgeschützt.
  • Pick<T, K> – Wählt einen Satz von Eigenschaften K vom Typ T aus.
  • Omit<T, K> – Entfernt einen Satz von Eigenschaften K aus dem Typ T.
  • Record<K, T> – Konstruiert einen Objekttyp mit Schlüsseln vom Typ K und Werten vom Typ T.

Beispiel: Verwenden von Partial<T>

Der Hilfstyp Partial macht alle Eigenschaften einer Schnittstelle optional. So kann er verwendet werden:

interface User {
  name: string;
  age: number;
  email: string;
}

const updateUser = (user: Partial<User>) => {
  // Update logic
};

updateUser({ name: "John" });

In diesem Beispiel akzeptiert updateUser ein Argument vom Typ Partial<User>, was bedeutet, dass nur einige der Eigenschaften der Schnittstelle User erforderlich sind.

Beispiel: Verwenden von „Pick“<T, K>

Der Dienstprogrammtyp Pick ermöglicht die Auswahl einer Teilmenge von Eigenschaften aus einem Typ:

interface User {
  name: string;
  age: number;
  email: string;
}

type UserContactInfo = Pick<User, "name" | "email">;

const contactInfo: UserContactInfo = {
  name: "John",
  email: "[email protected]"
};

Hier erstellt Pick<User, “name” | “email”> einen neuen Typ UserContactInfo mit nur den Eigenschaften name und email aus der ursprünglichen User-Schnittstelle.

Beispiel: Verwenden von „Omit“<T, K>

Der Hilfstyp Omit entfernt angegebene Eigenschaften aus einem Typ:

interface User {
  name: string;
  age: number;
  email: string;
}

type UserWithoutEmail = Omit<User, "email">;

const user: UserWithoutEmail = {
  name: "John",
  age: 30
};

In diesem Beispiel wird der Typ UserWithoutEmail erstellt, indem die Eigenschaft email aus der Schnittstelle User weggelassen wird.

Erstellen benutzerdefinierter Dienstprogrammtypen

Benutzerdefinierte Hilfstypen können auch mit den erweiterten Typfunktionen von TypeScript wie bedingten Typen, zugeordneten Typen und mehr erstellt werden. Hier ist ein einfaches Beispiel für einen benutzerdefinierten Hilfstyp, bei dem alle Eigenschaften optional sind:

type MyPartial<T> = {
  [P in keyof T]?: T[P];
};

interface User {
  name: string;
  age: number;
  email: string;
}

const user: MyPartial<User> = {
  name: "Alice"
};

Dieser benutzerdefinierte Typ MyPartial funktioniert ähnlich wie der in TypeScript integrierte Hilfstyp Partial.

Abschluss

TypeScript-Hilfstypen sind eine wesentliche Funktion für die flexible und wiederverwendbare Arbeit mit Typen. Durch die Nutzung dieser Hilfstypen kann Code prägnanter und wartungsfreundlicher gestaltet werden. Ob Sie nun integrierte Hilfstypen wie Partial, Pick und Omit verwenden oder benutzerdefinierte erstellen, sie verbessern das Typsystem von TypeScript erheblich.