字符串我現在有這樣的數組:打字稿:獲取我的代碼庫從類型脫節
type Filter = "all"| "active"| "broken"| "disabled";
const filters: Filter[] = ["all", "active", "broken", "disabled"];
我可以自動生成一個從水能撈到?
字符串我現在有這樣的數組:打字稿:獲取我的代碼庫從類型脫節
type Filter = "all"| "active"| "broken"| "disabled";
const filters: Filter[] = ["all", "active", "broken", "disabled"];
我可以自動生成一個從水能撈到?
總之:沒有。至少不是在運行時。而不是作爲TypeScript語言的一部分。
TypeScript type
僅用於編譯/輸入目的。它實際上並沒有編譯成任何東西。
您可以使用enum
自動執行某些操作,因爲枚舉實際上編譯爲一個JavaScript對象,您可以選擇其中的屬性。它不會基於像你的類型的字符串......不知道這是否超級重要。
function setupEnum(enumType: any): any[] {
let result = [];
for (let i in enumType)
if (isNaN(+i))
result.push(enumType[i]);
return result;
}
enum Filter {
all, active, broken, disabled
}
var filters: Filter[] = setupEnum(Filter);
@Mitch是正確的,這是不可能的。
我目前在TS中的挑戰列表(link - >UnionToArray
)中有這個。我認爲實施各種各樣的種類(那裏有#5453)可能有辦法解決這個問題。