Dans le développement TypeScript moderne, il est courant de rencontrer des interfaces complexes qui définissent la structure de divers modèles de données. Il est souvent nécessaire d'extraire un tableau de noms de propriétés d'une interface pour effectuer des opérations dynamiques ou créer des valeurs dérivées.
Considérons l'interface suivante représentant une table de base de données :
<code class="typescript">export interface IMyTable { id: number; title: string; createdAt: Date; isDeleted: boolean; }</code>
Nous aimerions obtenir un tableau de noms de colonnes à partir de cette interface :
<code class="typescript">const IMyTable = ["id", "title", "createdAt", "isDeleted"];</code>
Depuis la version 2.3 de TypeScript (avec corrections de bugs en 2.4 ), les transformateurs personnalisés offrent une solution élégante à ce problème. Voici comment utiliser la bibliothèque "ts-transformer-keys" :
<code class="typescript">import { keys } from 'ts-transformer-keys'; interface Props { id: string; name: string; age: number; } const keysOfProps = keys<Props>(); console.log(keysOfProps); // ['id', 'name', 'age']</code>
Cette approche nécessite d'utiliser l'API de transformation TypeScript plutôt que d'exécuter directement "tsc". Il est important de noter que les transformateurs personnalisés en sont encore à leurs débuts et peuvent nécessiter une configuration supplémentaire.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!