gpt4 book ai didi

typescript - 枚举值的类型

转载 作者:行者123 更新时间:2023-12-04 14:22:17 25 4
gpt4 key购买 nike

我可以获得表示接口(interface)键的类型:

interface I { a: string; b: string; }
const i: keyof I; // typeof i is "a" | "b"

有没有一种方法可以类似地获取表示枚举值的类型?

enum E { A = "a", B = "b" }
const e: ?; // typeof e is "a" | "b"

最佳答案

template literal 的一些帮助下,可以将枚举的值列表推断为一种类型运算符(operator):

enum E { A = "a", B = "b" }

type EValue = `${E}`
// => type EValue = "a" | "b"

const value: EValue = "a" // => ✅ Valid
const valid: EValue = "b" // => ✅ Valid
const valid: EValue = "🤡" // => 🚨 Invalid

引用文章:Get the values of an enum dynamically(免责声明:作者在这里)

关于typescript - 枚举值的类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53016066/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com