Hél*_*vel 5 typescript angular
我有以下字符串枚举:
export enum RecordStatus {
ONGOING_ADMINISTRATIVE_ANALYSIS = 'ONGOING_ADMINISTRATIVE_ANALYSIS',
ONGOING_TECHNICAL_ANALYSIS = 'ONGOING_TECHNICAL_ANALYSIS',
COMPLETED_APPLICATION = 'COMPLETED_APPLICATION'
}
Run Code Online (Sandbox Code Playgroud)
我有以下功能:
setTimelineStatus(status: RecordStatus) : void {
console.log("State :" + status); // ON_GOING_TECHNICAL_ANALYSIS
console.log(RecordStatus.valueOf(status).ordinal()); // doesn't work. Should print 1
console.log(RecordStatus.valueOf("ON_GOING_TECHNICAL_ANALYSIS").ordinal()); // doesn't work either. Should print 1
}
Run Code Online (Sandbox Code Playgroud)
此函数检索集合枚举作为参数,例如RecordStatus.ON_GOING_TECHNICAL_ANALYSIS。我想获取索引(在上述情况下应该是 1)。我在这个线程中尝试了解决方案Get index of enum from string? 但我有这个错误:
我不明白为什么我有这个错误。我只想要枚举值的索引。
小智 6
您所指的帖子适用于 Java 中的枚举。
在打字稿中,枚举在运行时被视为对象,因此您可以遍历枚举的键,直到找到您要查找的键。
Object.keys(RecordStatus).indexOf('ON_GOING_TECHNICAL_ANALYSIS');
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2164 次 |
| 最近记录: |