获取某种字符串类型的所有类型列表

问题描述:

我使用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?

生成的代码使用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