2017-04-18 149 views
0

我使用generateTypeScript-gradle插件生成了此類字體。獲取某種字符串類型的所有類型列表

export type FoodUnit = "AS_NEEDED" | "G" | "KG" | "ML" | "L" | "JAR" | "CAN" | "PIECE" | "BUNCH" | "HANDFUL" | "STALK" | "SLICE" | "TABLESPOON" | "TEASPOON" | "DROP" | "CUP" | "TWIG"; 

現在我想列出一個類中所有可能的單元。

units:FoodUnit[] = ["AS_NEEDED", "G", "KG" ..... 

有沒有一種方法,而不是寫

units:FoodUnit[] = FoodUnit.values() 

喜歡我這一點在Java?

回答

1

生成的代碼使用type關鍵字,從而產生type alias

export type FoodUnit = "AS_NEEDED" | "G" | "KG" | "ML" | "L" | "JAR" | "CAN" | "PIECE" | "BUNCH" | "HANDFUL" | "STALK" | "SLICE" | "TABLESPOON" | "TEASPOON" | "DROP" | "CUP" | "TWIG"; 

類型別名是純粹的編譯時建:他們沒有以任何形式在您的JS代碼,實際上是由運行存在一個瀏覽器或節點。

如果你想要一個基於字符串的枚舉結構,你可以使用像typescript-string-enums這樣的庫或自己動手as documented here

相關問題