gpt4 book ai didi

enums - 使用显示值创建 TypeScript 枚举

转载 作者:行者123 更新时间:2023-12-04 12:46:44 24 4
gpt4 key购买 nike

我有一个看起来像这样的 typescript 枚举:

enum State {
NotRequired,
Working,
PendingReview,
Reviewed,
Done
}

这会产生这个:
var State;
(function (State) {
State[State["NotRequired"] = 0] = "NotRequired";
State[State["Working"] = 1] = "Working";
State[State["PendingReview"] = 2] = "PendingReview";
State[State["Reviewed"] = 3] = "Reviewed";
State[State["Done"] = 4] = "Done";
})(State || (State = {}));

我希望这些值是一个格式良好的字符串,需要时带有空格。

所以 State[State["PendingReview"] = 2] = "PendingReview";会变成 State[State["PendingReview"] = 2] = "Pending Review";
通过像这样定义我的枚举,我设法实现了与此接近的目标:
enum State {
"Not Required",
Working,
"Pending Review",
Reviewed,
Done
}

然而,这有一个缺点,即在代码中使用任何带有空格的枚举值,我现在必须使用我的 key 。

所以 State.PendingReview现在必须像这样使用 State["Pending Review"]
通过以某种方式为我的 key 定义一个替代显示字符串,我可以两全其美吗?

所以当我说 State[State.PendingReview]它给了我值(value) "Pending Review"

最佳答案

由于您没有为枚举指定显式值,您也可以为此使用字符串枚举(从 TypeScript 2.4 开始可用):

enum State {
NotRequired = "Not Required",
Working = "Working",
PendingReview = "Pending Review",
Reviewed = "Reviewed",
Done = "Done"
}
显示值然后简单地变成例如 State.NotRequired .

关于enums - 使用显示值创建 TypeScript 枚举,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37208771/

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