TypeScript 開發中的一個常見場景是處理資料庫表格介面及其對應的欄位。例如,考慮一個介面定義為:
<code class="typescript">export interface IMyTable { id: number; title: string; createdAt: Date; isDeleted: boolean; }</code>
人們可能需要以字串陣列的形式檢索該介面的屬性名稱,例如:
<code class="typescript">const IMyTable = ["id", "title", "createdAt", "isDeleted"];</code>
這是特別重要的當動態存取直接物件/陣列分配不可行的表介面時。
要實現這一點,可以使用TypeScript 2.3 中引入的自訂轉換器(作為第三方套件提供) :
<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>
此轉換器需要使用TypeScript 轉換API,而不是直接呼叫tsc 指令。但是,存在一個持續存在的問題,要求自訂轉換器的插件支援以簡化其使用。
以上是如何以字串陣列形式取得 TypeScript 介面的鍵?的詳細內容。更多資訊請關注PHP中文網其他相關文章!