Angular Material datepicker设置日期格式和语言

Angular Material的日期选择器datepicker,默认都是英文的,日期格式也不太常规,需要进行格式化。

网上查到了一些方法,步骤整理如下:

1. 安装moment.js相关的支持

npm install @angular/material-moment-adapter
npm install moment

2. 引用支持 MatMomentDateModule

app.module.ts

import { MatMomentDateModule } from '@angular/material-moment-adapter';

imports: [
   ...
   MatMomentDateModule
]

3. 设置全局日期格式

定义一个全局的日期格式。出于代码管理的考虑,我把它放在global.ts中,而不是放在app.module.ts中,虽然两者效果是一样的。

global.ts

export class Global {
    ...
    public static DATE_FORMAT = {
        parse: {
            dateInput: 'YYYY-MM-DD',
        },
        display: {
            dateInput: 'YYYY-MM-DD',
            monthYearLabel: 'YYYY MMM',
            dateA11yLabel: 'LL',
            monthYearA11yLabel: 'YYYY MMMM',
        },
     };
}

app.module.ts

import {Global} from '../global';

@NgModule({...
providers: [
    { provide: MAT_DATE_FORMATS, useValue: Global.DATE_FORMAT }
]
...

4. 设置界面语言为中文

app.module.ts

import { MAT_DATE_LOCALE } from '@angular/material/core';
...
providers: [
   ...
   { provide: MAT_DATE_LOCALE, useValue: 'zh-CN' }
]

效果:

 

参考:

http://brickydev.com/angular-material-datepicker-with-many-custom-date-formats/

https://stackoverflow.com/questions/45726463/change-language-of-datepicker-of-material-angular-4

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小鹰信息技术服务部

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值