angular - 如何使用 Typescript 中的值创建和解析字符串枚举
问题描述
我知道使用 Typescript 创建字符串枚举存在问题,即使在 v2.4+ 中我使用的是 typescript 2.8 和 Angular 6。
我想要一个枚举并从枚举中自由获取字符串值,并将字符串解析为枚举。
所以假设我有这个枚举:
export enum MyEnum{
INIT = 'init-room',
CLOSE = 'close-room'
}
这个枚举对于与 REST API 通信很有用。所以从 API 到 API 我必须发送字符串。但是在应用程序内部,我想尽快将字符串从 API 转换为枚举。
所以我想要有函数来解析和字符串化我的枚举。
我尝试这种方法,但这不起作用。
export function toString(type: MyEnum): string {
return MyEnum[type];
}
export function parse(type: string): Mode {
return MyEnum[type];
}
好吧,这并不奇怪,因为我想value
从这个枚举中获取,而不是MyEnum[type]
- 但我不知道该怎么做。
我知道将键转换为值存在问题,而值到键有效。所以我要求任何干净的代码解决方案来实现我的目标。
解决方案
您可以安全地切换到常量。
推荐阅读
- c# - Automapper - 使用继承自 IEnumerable 的属性映射类的问题
- javascript - 如何旋转three.js元素周期表球体?
- html - 在 CSS/样式化组件的顶部中心对齐绝对位置
- python - 在 Python 中初始化类变量的快速方法
- python - 下载大约 15000 个 URL Python 的元内容 - 线程
- wpf - TextBox 文本 IMultiValueConverter 和其他绑定参数
- authentication - 谷歌,不太安全的应用程序和无效的凭据
- kotlin - 是否可以在 Kotlin 的类型转换“is”运算符的右侧使用变量?
- wso2 - ntlm 和 wso2 api 管理器
- nginx - NGINX load_module 错误 - 如何从包含文件中加载模块?