我有一个应用程序,它以两种语言(英语,法语)运行(我可以使用i18n更改我想选择的语言)。
此刻,即使选择法语,我也只能用英语获取日期。
<div class="information">
{{ information.date | information:'EEEE'}} {{information.date | date:'d'}} {{ information.date | date:'MMMM'}} {{ information.date |
date:'yyyy'}}
</div>
有没有一种方法可以根据我选择的语言来更改日期?
答案 0 :(得分:0)
您可以将类变量用作日期格式,例如{{information.date | date:dateFormat}}
,并在语言更改时更改日期格式
@Component(...)
export class WhateverComponent {
dateFormat: string;
dateFormatSubscription: Subscription;
constructor(translateService: TranslateService) {
const langToDateFormat = lang => {/* map language to date format HERE */}
this.dateFormat = langToDateFormat(translateService.currentLang);
this.dateFormatSubscription = translateService.onLangChange().pipe(
map(langToDateFormat)
).subscribe(dateFormat => this.dateFormat = dateFormat);
}
ngOnDestroy() {
// don't forget to unsubscribe!!!
this.dateFormatSubscription.unsubscribe();
}
}