angular - 如何从 TypeScript 枚举(Angular 6)中获取价值
问题描述
我将枚举的数值保存在我的数据库中,并将其返回到不同区域的 UI。现在我想在不同的角度分量中提取与枚举中的该数值相关联的字符串值。
我有一个像这样的枚举:
export enum ReportedResourceStatusEnum {
New = 1,
Reviewed = 2,
Escalated = 3,
Resolved = 4
}
该值(1、2、3、4)作为字符串属性(nvarchar)存储在表中。当我调用 api 时,会返回一个对象,如下所示:
{
something: 'Something',
status: '1'
}
当我向 UI 显示时,会显示“1”。如何注入Enum class
并提取与值 1 关联的字符串。在这种情况下,是单词New
.
解决方案
语法是:ReportedResourceStatusEnum[1]
试试这个:
export enum ReportedResourceStatusEnum {
New = 1,
Reviewed = 2,
Escalated = 3,
Resolved = 4
}
export class AppComponent {
data = {
something: 'Something',
status: '1'
}
constructor() {
console.log(ReportedResourceStatusEnum[Number(this.data.status)]) //New
}
}
推荐阅读
- azure - 如何使用 Azure 数据工厂将新的或更新的文件从 Azure 数据湖推送到文件夹
- sql-server - EF Core:简单查询 - 为什么这么慢?
- asp.net - IEnumerable
vs DataTable 服务器端 - linux - 额外的符号和汇编代码是什么意思?
- flutter - 在 Flutter MaterialApp 小部件中使用 ThemeData copyWith 的正确方法是什么?
- rest - 与 Script Runner 一起使用的 Groovy Rest/HTTP Request Native
- javascript - 仅当 ID 存在于数据库中时才显示输入字段
- java - JSR310 Year.parse() 抛出 DateTimeParseException 值 < 1000
- javascript - 如何在 Jquery/Javascript 中获取最后两个括号之间的数据
- javascript - 如何检查 github 网址