1

嗨,我有翻译问题,我正在使用 ng2-translate 和这个主题:SB Admin Bootstrap 4 Angular 4

我有一个带有语言选择下拉菜单的标题,如果我更改语言,只有我的标题组件被翻译,而不是整个页面(我在我的所有项目中正确配置了管道,并在正确的模块中导入了 translatemodule)

我的 component.html 是:

<app-header></app-header>
<app-sidebar></app-sidebar>
<section class="main-container">
<router-outlet></router-outlet>
</section>

在我的标题中,我有这个下拉列表:

<div>
 <label>
  {{ 'HOME.SELECT' | translate }} 
  <select #langSelect (change)="translate.use(langSelect.value);setLang()">
   <option *ngFor="let lang of translate.getLangs()" [value]="lang" [selected]="lang === translate.currentLang">{{ lang }}</option>
  </select>
 </label>
</div>

如果它由许多其他组件组成,那么在整个页面上更改语言的方法是什么?

4

1 回答 1

0

您需要在使用翻译管道的所有模块中导入 ng2-translate 模块。最好安装下一个版本 ngx-translate/core。

对于 ngx-translate/core 需要在所有子模块中导入 TranslateModule

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

@NgModule({
    imports: [
        ...,
        TranslateModule //or TranslateModule.forChild()
    ]  
于 2017-07-04T11:52:37.643 回答