11

我正在使用 ngx-translate 在视图中没有问题,使用管道。我需要做的是在组件中使用它,例如显示错误消息,或定义数据表列默认内容。

我正在尝试做类似的事情:

translate.instant("AREA.NEW");

或者

translate.get("AREA.NEW").subscribe((res: string) => {
    console.log(res);
});

我试过在 ngOnInit() 和 ngAfterViewInit() 中调用它

但在这两种情况下,我只得到“AREA.NEW”,而不是翻译后的词。我假设 json 字典是在我调用后加载的,所以我不知道它是如何工作的。

4

2 回答 2

10

导入TranslateService并在您想要的任何地方使用它。

import { TranslateService } from '@ngx-translate/core';

export class YourComponent {
  constructor(private translateService: TranslateService) {
    console.log('translation', this.translateService.instant('my_i18n_json_defined_key'));
  }
}
于 2019-06-18T12:59:20.543 回答
4

这是工作。

constructor(private readonly translateService: TranslateService) { }

ngOnInit() {
    this.translateService.get(['']).subscribe(translations => {
        console.info(this.translateService.instant('key1'));
        console.info(this.translateService.instant('key2'));
        console.info(this.translateService.instant('key3'));
    });
}
于 2019-09-13T08:26:36.697 回答