【发布时间】:2018-03-12 15:17:51
【问题描述】:
我使用 @ngx-translate 的 TranslateService,我找到的每个教程都几乎相同。
问题是..我在根 AppComponent 中有这个:
import { TranslateService } from '@ngx-translate/core';
constructor(private translate: TranslateService) {
translate.addLangs(["en", "fr"]);
translate.setDefaultLang('en');
let browserLang = translate.getBrowserLang();
translate.use(browserLang.match(/en|fr/) ? browserLang : 'en');
}
在更改语言的标题事件中:
<select #langSelect (change)="translate.use(langSelect.value)">
<option *ngFor="let lang of translate.getLangs()" [value]="lang" [selected]="lang === translate.currentLang">{{ lang }}</option>
</select>
我希望它是全局的,更改事件传播到我的所有模块、组件等。有没有办法做到这一点,或者我必须在我使用它的每个地方注入这个服务?
谢谢。
【问题讨论】:
-
您是否设法解决了这个问题?我也在为此苦苦挣扎
-
是的。我将 Observable 与 Subject 一起使用,它可以工作。还有一个解决方案是 ng2-redux。下周我将尝试在此处粘贴示例。
标签: javascript angular translate angular-translate