datePipe 中的 i18n Angular
i18n in datePipe Angular
我有一个应用程序,它 运行 有两种语言(我可以使用 i18n 更改并选择我想要的语言)英语/法语。
即使我 select 法语,目前我也只能得到英文日期。
<div class="information">
{{ information.date | information:'EEEE'}} {{information.date | date:'d'}} {{ information.date | date:'MMMM'}} {{ information.date |
date:'yyyy'}}
</div>
目前我在 2018 年 8 月 17 日这个星期一得到它,我也想得到法国的 Lundi 17 Aout 2018
有没有办法根据 selected 的语言更改日期?
我对 i18n 没有更多的了解,但在学习了文档之后,我确保这段代码适合你。
ng 服务 --configuration=fr
将此命令用于 运行 您的程序。此处 fr 指法语标识符。
如果要导入其他语言的区域设置数据,可以在 app.module.ts 文件中手动完成。
从“@angular/common”导入 {registerLocaleData};
从“@angular/common/locales/fr”导入 localeFr;
registerLocaleData(localeFr, 'fr');
按照此处所述创建和使用自定义管道:https://angular.io/guide/pipes
像这样:
import { Pipe, PipeTransform } from '@angular/core';
enum Days {
Dimanche,
Lundi,
Mardi,
Mercredi,
Jeudi,
Vendredi,
Samedi
}
enum Months {
Janvier,
Février,
Mars,
Avril,
Mai,
Juin,
Juillet,
Août,
Septembre,
Octobre,
Novembre,
Décembre
}
@Pipe({ name: 'frenchDate' })
export class FrenchDatePipe implements PipeTransform {
transform(date: Date) {
const dayOfMonth = date.getDate();
const nameOfDay = Days[date.getDay()];
const nameOfMonth = Months[date.getMonth()];
const year = date.getYear();
const result = nameOfDay + ' ' + dayOfMonth + ' ' + nameOfMonth + ' ' + year;
return result;
}
}
我有一个应用程序,它 运行 有两种语言(我可以使用 i18n 更改并选择我想要的语言)英语/法语。
即使我 select 法语,目前我也只能得到英文日期。
<div class="information">
{{ information.date | information:'EEEE'}} {{information.date | date:'d'}} {{ information.date | date:'MMMM'}} {{ information.date |
date:'yyyy'}}
</div>
目前我在 2018 年 8 月 17 日这个星期一得到它,我也想得到法国的 Lundi 17 Aout 2018
有没有办法根据 selected 的语言更改日期?
我对 i18n 没有更多的了解,但在学习了文档之后,我确保这段代码适合你。
ng 服务 --configuration=fr
将此命令用于 运行 您的程序。此处 fr 指法语标识符。
如果要导入其他语言的区域设置数据,可以在 app.module.ts 文件中手动完成。
从“@angular/common”导入 {registerLocaleData};
从“@angular/common/locales/fr”导入 localeFr;
registerLocaleData(localeFr, 'fr');
按照此处所述创建和使用自定义管道:https://angular.io/guide/pipes
像这样:
import { Pipe, PipeTransform } from '@angular/core';
enum Days {
Dimanche,
Lundi,
Mardi,
Mercredi,
Jeudi,
Vendredi,
Samedi
}
enum Months {
Janvier,
Février,
Mars,
Avril,
Mai,
Juin,
Juillet,
Août,
Septembre,
Octobre,
Novembre,
Décembre
}
@Pipe({ name: 'frenchDate' })
export class FrenchDatePipe implements PipeTransform {
transform(date: Date) {
const dayOfMonth = date.getDate();
const nameOfDay = Days[date.getDay()];
const nameOfMonth = Months[date.getMonth()];
const year = date.getYear();
const result = nameOfDay + ' ' + dayOfMonth + ' ' + nameOfMonth + ' ' + year;
return result;
}
}