i有一个Angular 4项目,该项目使用了Angular 2材料datePicker。我已将其中的日期格式更改为DD/mm/yyyy。我已经将代码移至NPM软件包中并发布了它。当我测试包装时,正确的日期格式正在工作,但是当它与另一个项目集成时,材料datePicker选择默认格式(mm/dd/yyyy(。
import {MomentDateAdapter} from '@angular/material-moment-adapter';
import {DateAdapter, MAT_DATE_FORMATS, MAT_DATE_LOCALE} from '@angular/material/core';
import * as _moment from 'moment';
/*Create date format DD/MM/YY */
const moment = _moment;
export const MY_FORMATS = {
parse: {
dateInput: 'D/MM/YYYY'
},
display: {
dateInput: 'DD/MM/YYYY',
monthYearLabel: 'MMMM Y',
dateA11yLabel: 'LL',
monthYearA11yLabel: 'MMMM Y'
},
};
export class SomeModule {
static forRoot(): ModuleWithProviders{
return {
ngModule: SomeModule ,
providers: [
ReportingDashboardService,
{provide: DateAdapter, useClass: MomentDateAdapter, deps: [MAT_DATE_LOCALE]},
{provide: MAT_DATE_FORMATS, useValue: MY_FORMATS},
]
}
}
}
尝试此
import { DateAdapter } from '@angular/material';
constructor(private dateAdapter: DateAdapter<Date>) {
this.dateAdapter.setLocale('your locale name');
}