私はする方法を探しています
Angle2 + TypeScriptでこれをどのように動的に設定できますか?
これは公式のAngular2 plunkrからの私の試みです: https://plnkr.co/edit/lWV4VhzpWYnCXeDBpzsn?p=preview
document.locale='en';
typeScriptサービス内でwindow.documentを取得し、そこでロケールを変更しようとしましたが、呼び出され、ロケールが適切に設定されているにもかかわらず(コンソールに表示)、インターフェイスは選択した言語で表示されません起動時。
もちろん、同じ誤った方法が使用され、表示が更新されないため、ドロップダウンボタンも機能しませんが、それは次のステップです。
ユーザーが選択した言語キーをローカルストレージに保存しています:
//<select name="selectLocate" (change)="onChange($event.target.value)">
public onChange(localeId: string): void {
localStorage.setItem('localeId', localeId);
location.reload(true);
}
その後、強制的にリロードし、i18n.provider.ts
let locale = localStorage.getItem('localeId');