我正在尝试设置国家(地区)代码集合。因为我的前端显示了它,所以我想显示例如“ Austria”,但是在将其发送到后端时,我只想发送“ A”,因为这是存储方式。理想情况下,它看起来应该像这样:
CountryCodes = {
A: "Austria",
D: "Germany",
}
console.log(CountryCodes["A"]); // -> "Austria"
console.log(CountryCodes["Austria"]); // -> "A"
我以为我可以使用一个枚举
enum MyEnum {
first = 0,
second = 1,
}
成为
MyEnum = {
0 = "first",
1 = "second"
first = 0,
second = 1,
}
从打字稿转换为javascript时。但是,如果枚举的值不是数字,则不是这种情况。
我不确定要使用哪种集合,因为我不想为每个国家/地区代码添加两个keyValuePair。您有解决该问题的想法吗?我在这里错过了一个非常明显的解决方案吗?
答案 0 :(得分:0)
我会采取略有不同的方法。您可以将您的枚举创建为字符串枚举:
export enum MyEnum {
A = "Australia",
D = "Germany"
}
因此,当您渲染<>MyEnum.A</>
时,将渲染澳大利亚。
然后您可以安装enum-values并只需执行以下操作:
const val = EnumValues.getNameFromValue(MyEnum, 'Australia')
这样val = A
,然后您就可以将其发送到后端。
希望这会有所帮助。