Mengakses Kekunci Antara Muka sebagai Tatasusunan Rentetan dalam TypeScript
Dalam TypeScript, ia boleh berguna untuk mendapatkan nama sifat antara muka sebagai tatasusunan daripada rentetan. Pertimbangkan antara muka berikut:
<code class="typescript">export interface IMyTable { id: number; title: string; createdAt: Date; isDeleted: boolean; }</code>
Kami ingin menukar antara muka ini kepada tatasusunan seperti ini:
<code class="typescript">const IMyTable = ["id", "title", "createdAt", "isDeleted"];</code>
Menyalurkan melalui sifat antara muka untuk mengekstrak nama kunci bukanlah disokong secara langsung dalam TypeScript. Walau bagaimanapun, terdapat penyelesaian menggunakan pengubah tersuai.
Menggunakan Transformer Tersuai
Sehingga TypeScript 2.4, pengubah tersuai menyediakan cara untuk mengubah suai gelagat TypeScript. Kami boleh mentakrifkan pengubah tersuai untuk mengekstrak kekunci antara muka.
<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>
Had Transformer Tersuai
Pengubah tersuai mempunyai had. Mereka memerlukan penggunaan API transformasi TypeScript dan bukannya perintah tsc tradisional. Terdapat isu terbuka yang meminta sokongan pemalam untuk pengubah tersuai.
Pertimbangan Lain
Jika anda menggunakan rangka kerja yang menjana antara muka secara dinamik, anda mungkin perlu meneroka lebih lanjut penyelesaian, seperti menggunakan perpustakaan utiliti jenis atau alat pengaturcaraan meta seperti Reflect.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mendapatkan Susunan Kekunci Antara Muka dalam TypeScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!