有没有一种方法可以轻松地从 Typescript 中的枚举创建联合类型?
Is there a way to easilly create union type from enum in Typescript?
当我写 Typescript 时,我经常 运行 遇到某种枚举的情况,我想从这个枚举中生成联合类型。我尝试寻找可以为我完成的实用程序类型,但我找不到任何实用程序类型。有更简单的方法吗?
enum Person {
Name = "Adam",
Age = 32
}
type Something = Person.Name | Person.Age;
我知道这个例子相当简单,但我经常使用带有条目基调的枚举,手工完成既不愉快也不易于维护。
枚举类型本身已经等同于该枚举所有成员的并集。
如果您尝试使用 Exclude
从枚举中删除一个成员,您甚至可以看到实际效果:
enum Person {
Name = "Adam",
Age = 32
}
type Something = Exclude<Person, Person.Age> // Person.Name
当我写 Typescript 时,我经常 运行 遇到某种枚举的情况,我想从这个枚举中生成联合类型。我尝试寻找可以为我完成的实用程序类型,但我找不到任何实用程序类型。有更简单的方法吗?
enum Person {
Name = "Adam",
Age = 32
}
type Something = Person.Name | Person.Age;
我知道这个例子相当简单,但我经常使用带有条目基调的枚举,手工完成既不愉快也不易于维护。
枚举类型本身已经等同于该枚举所有成员的并集。
如果您尝试使用 Exclude
从枚举中删除一个成员,您甚至可以看到实际效果:
enum Person {
Name = "Adam",
Age = 32
}
type Something = Exclude<Person, Person.Age> // Person.Name