Angular mat datepicker上的多种dateInput格式

Angular mat datepicker上的多种dateInput格式,angular,typescript,datepicker,angular-material2,formatdatetime,Angular,Typescript,Datepicker,Angular Material2,Formatdatetime,我正在创建两个mat日期选择器,一个格式为“MM/YYYY”,另一个格式为“DD/MM/YYYY”,但我无法在模块中配置这两种格式 我试图在一个模块中输入MM/YYYY的设置,在应用模块中输入DD/MM/YYYY的设置 代码1: export const MY_FORMATS = { parse: { dateInput: 'MM/YYYY', }, display: { dateInput: 'MM/YYYY', monthYearLabel: 'MMM Y

我正在创建两个mat日期选择器,一个格式为“MM/YYYY”,另一个格式为“DD/MM/YYYY”,但我无法在模块中配置这两种格式

我试图在一个模块中输入MM/YYYY的设置,在应用模块中输入DD/MM/YYYY的设置

代码1:

export const MY_FORMATS = {
  parse: {
    dateInput: 'MM/YYYY',
  },
  display: {
    dateInput: 'MM/YYYY',
    monthYearLabel: 'MMM YYYY',
    dateA11yLabel: 'LL',
    monthYearA11yLabel: 'MMMM YYYY',
  },
...

providers: [{ provide: DateAdapter, useClass: MomentDateAdapter, deps: [MAT_DATE_LOCALE] },
  {provide: MAT_DATE_FORMATS, useValue: MY_FORMATS}]
}; 
代码2:

export const MY_FORMATS = {
  parse: {
    dateInput: 'DD/MM/YYYY',
  },
  display: {
    dateInput: 'DD/MM/YYYY',
    monthYearLabel: 'DD MMM YYYY',
    dateA11yLabel: 'LL',
    monthYearA11yLabel: 'DD MMMM YYYY',
  },
};
...
providers: [{ provide: DateAdapter, useClass: MomentDateAdapter, deps: [MAT_DATE_LOCALE] },
{provide: MAT_DATE_FORMATS, useValue: MY_FORMATS}]
})
如果我在设置中使用DD/MM/YYYY格式,则所有日期显示为DD/MM/YYYY,如果我不使用,则所有日期显示为MM/YYYY。我该怎么做才能将一个日期显示为MM/YYYY,另一个日期显示为DD/MM/YYYY?

您读过这篇文章了吗?


可以在这里找到这个示例。

我找到了一种解决这个问题的方法,就像Angle Material Wiki中的Datepicker示例一样,我没有在模块中定义DateAdapter和日期格式提供程序,而是在组件中定义了它,然后它工作了。


公共设置PatientsVisitsDateTiming(日期:任意){
this.VisitorsCurrentDate=时刻(日期,“D-M-YYYY”)。格式(“DD-MMM-YYYY”);

}

谢谢你的回答,我读了这篇文章和代码,非常有趣,但我不知道如何更改每个模块上的显示日期输入标签,这是我真正的问题<代码>格式(date:date,display:string | DateDisplay):string{console.log(display);if(display=='customInput'){returnnewdatepipe(this.locale).transform(date,'dd/MM/yyyy');}我可以解析日期,但我仍然不知道如何将一个组件设置为“customInput”,另一个组件设置为“elseInput”。如果要为每个输入控件设置不同的日期格式,请使用下面的代码。可以为输入控件设置任何日期格式,也可以设置所需的日期格式。如果要为每个输入控件设置不同的日期格式,请使用上面的代码。可以设置任何日期输入控件的格式需要什么日期格式。这样试试。。。。