angular - Angular:如何根据键值更改值
问题描述
你好,所以我得到一个字符串值,我想将它传递给另一个函数。例如,如果我得到“eng”,我希望它是“en”。我不想使用 slice 或 if。我尝试制作一个枚举,但没有奏效。
ngOnInit(): void {
this.setLocaleDateFormat(this.translateService.currentLang);
}
setLocaleDateFormat(language: Languages): void {
this.dateAdapter.setLocale(language); }
export enum Languages {
'eng' = 'en',
'slk' = 'sk',
'cze' = 'cz',
}
所以我想传递值并根据一些模板将其更改为其他内容。我正在学习英语,但我想将本地环境设置为 en,例如。
解决方案
从您的帖子中,我相信this.translateService.currentLang
会返回“eng”。我对此表示怀疑,但回到你的问题。语言不应该是枚举。它应该是一个常量对象。
export const Languages = {
eng: 'en',
slk: 'sk',
cze: 'cz',
};
setLocaleDateFormat(): void {
this.dateAdapter.setLocale(Languages[this.translateService.currentLang]);
}
推荐阅读
- c# - OWIN OpenId 身份验证 - 注销后的活动会话
- raku - 为什么默认的 Raku if/while/loop/when 块都具有相同的标识值 (.WHICH)?
- npm - 有没有办法在 npm 上更改软件包的最新版本
- kubernetes - Kubernetes 服务的外部 IP
- r - 根据输入在R的每一行中选择不同的列,并对每一行中大于0的值进行计数
- c++ - getrusage 如何以微秒为单位进行测量?
- android - 使用 bulktransfer() 进行数据传输时获得 -1
- excel - 来自Attachmate反射的多个打开实例的VBA GetObject?
- vue.js - 单击Vue js中的按钮后,我应该如何在表单中复制部分内容
- java - 运行程序时没有可用的课程?