Maison > interface Web > js tutoriel > le corps du texte

Comment puis-je obtenir les clés d'une interface TypeScript sous forme de tableau de chaînes ?

Linda Hamilton
Libérer: 2024-10-29 19:04:30
original
567 Les gens l'ont consulté

How Can I Get the Keys of a TypeScript Interface as a String Array?

Clés d'une interface Typescript sous forme de tableau de chaînes

Un scénario courant dans le développement TypeScript consiste à gérer une interface de table de base de données et ses colonnes respectives. Par exemple, considérons une interface définie comme :

<code class="typescript">export interface IMyTable {
  id: number;
  title: string;
  createdAt: Date;
  isDeleted: boolean;
}</code>
Copier après la connexion

On peut avoir besoin de récupérer les noms de propriétés de cette interface sous la forme d'un tableau de chaînes, comme :

<code class="typescript">const IMyTable = ["id", "title", "createdAt", "isDeleted"];</code>
Copier après la connexion

Ceci est particulièrement essentiel lors de l'accès dynamique aux interfaces de table où l'affectation directe d'objet/tableau n'est pas réalisable.

Solution

Pour y parvenir, on peut utiliser un transformateur personnalisé introduit dans TypeScript 2.3, disponible sous forme de package tiers :

<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>
Copier après la connexion

Ce transformateur nécessite l'utilisation de l'API de transformation TypeScript au lieu d'appeler directement la commande tsc. Cependant, il existe un problème persistant nécessitant la prise en charge des plugins pour les transformateurs personnalisés afin de simplifier leur utilisation.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal