如何使用 ngx-translate 将标签例如 en 更改为英语

how to change labels for example en to english using ngx-translate

我在项目中使用 ngx-translate。 我在 assets/i18n 中创建了文件 en.jsonit.json 在组件语言中,我写了这段代码:

ngOnInit(): void {
    this.translate.addLangs([
      'it',
      'en'
  ]);
    this.translate.setDefaultLang('it');
    const browserLang = this.translate.getBrowserLang();
    this.translate.use(browserLang.match(/it/) ? browserLang : 'it');
  }

在html中:

<div class="dropdown-language">
    <label for="language">{{'LABEL.LINGUA' | translate }} &nbsp;</label>
        <select #langSelect (change)="translate.use(langSelect.value)" class="lang-style" id="language"> 
          <option *ngFor="let lang of translate.getLangs()" [value]="lang" [selected]="lang === translate.currentLang">{{ lang }}</option>
        </select>   
</div>

此代码运行良好,在页面中显示了带有选项 iten

的下拉菜单

我想更改我的代码,因为在页面中我必须显示选项 ItalianEnglish,而不是 iten

我也可以通过将名称从 it 更改为 Italian 以及将 en 更改为 English 来实现,但我认为可能有比这更好的解决方案.

export const LANGUAGES: Array<{ name: string; code: string }> = [
    { name: 'English', code: 'EN' },
    { name: 'Português (BR)', code: 'PT_BR' },
    { name: 'Japanese', code: 'JA' },
    { name: 'Italiano', code: 'IT' },
    { name: 'Français', code: 'FR' },
    { name: 'Español', code: 'ES' },
    { name: 'German', code: 'DE' }
];

并且在 HTML 中您可以遍历语言列表