Avatar ·

Wie man TypeScript-Interface-Schlüssel als Array von Strings erhält

Hallo zusammen! Ich habe angefangen, TypeScript zu lernen, und bin auf ein Problem gestoßen, das ich nicht lösen kann. Ich habe ein Interface, das die Struktur eines Objekts beschreibt, und ich muss eine Liste seiner Schlüssel als Array von Strings erhalten, um sie später im Code zu verwenden (z. B. für Validierung oder Formulargenerierung). Hier ist ein Beispiel meines Interfaces: ```typescript interface User { name: string; age: number; email: string; } ``` Ich möchte automatisch das Array `['name', 'age', 'email']` basierend auf diesem Interface erhalten. Ich habe versucht, `Object.keys()` zu verwenden, aber TypeScript beschwert sich, dass ich kein Objekt, sondern einen Typ übergebe. Ich habe verschiedene Varianten mit `keyof` ausprobiert, bekomme aber nur eine Union von Strings, kein Array. Könnt ihr mir sagen, wie man das richtig macht? Ich brauche eine Lösung in TypeScript, bei der die Typen erhalten bleiben. Ich wäre sehr dankbar für Codebeispiele! <<>>

Problem: Interface-Schlüssel sind zur Laufzeit nicht verfügbar

Die Hauptschwierigkeit besteht darin, dass TypeScript-Interfaces nur zur Compile-Zeit existieren.