Я занимаюсь разработкой приложения с использованием Ionic 4 / Angular 7 и Angular Material 7.2.1.
Приложение использует бразильский формат даты ДД / ММ / ГГГГ.
Когда я выбираю дату с помощью средства выбора даты, текст на входе подходит.
Но после ввода даты в поле ввода даты (при размытии) переключаются месяц и день. Например, если я введу 03/02/2015, после события размытия на входе отобразится 02.03.2015.
app.module.ts:
import 'moment/locale/pt-br';
import { MAT_DATE_FORMATS, MAT_DATE_LOCALE } from '@angular/material';
import { MAT_MOMENT_DATE_FORMATS, MomentDateAdapter } from '@angular/material-moment-adapter';
const MY_FORMATS = {
parse: {
dateInput: 'LL',
},
display: {
dateInput: 'DD/MM/YYYY',
monthYearLabel: 'MM/YYYY',
dateA11yLabel: 'LL',
monthYearA11yLabel: 'YYYY',
},
};
@NgModule({
declarations: [
AppComponent
],
entryComponents: [],
imports: [
// BrowserModule,
BrowserAnimationsModule,
HttpClientModule,
IonicModule.forRoot(),
IonicStorageModule.forRoot(),
AppRoutingModule,
ProjectMaterialModule,
ServiceWorkerModule.register('ngsw-worker.js', { enabled: environment.production })
],
providers: [
StatusBar,
SplashScreen,
{ provide: LOCALE_ID, useValue: 'pt-BR' },
{ provide: MAT_DATE_FORMATS, useValue: MY_FORMATS },
//{ provide: MAT_DATE_FORMATS, useValue: MAT_MOMENT_DATE_FORMATS },
{ provide: MAT_DATE_LOCALE, useValue: 'pt-BR' },
{ provide: RouteReuseStrategy, useClass: IonicRouteStrategy }
],
bootstrap: [AppComponent]
})
export class AppModule { }
В app.component я делаю:
ngOnInit () {
moment.locale('pt-BR');
}
Как я могу установить mat-datepicker таким образом, чтобы он распознавал формат даты, введенный во ввод?