📅  最后修改于: 2023-12-03 15:37:47.265000             🧑  作者: Mango
在 Angular 中,我们经常需要用到日期选择器。而 MatDatePicker 是一个非常方便的选择器,它是 Angular Material 库中的一个组件。在这里,我们将介绍如何使用 MatDatePicker 来选择日期。
npm install --save @angular/material @angular/cdk @angular/animations
import { MatDatepickerModule } from '@angular/material/datepicker';
import { MatFormFieldModule } from '@angular/material/form-field';
import { MatInputModule } from '@angular/material/input';
@NgModule({
imports: [
MatDatepickerModule,
MatFormFieldModule,
MatInputModule
]
})
<mat-form-field>
<input matInput [matDatepicker]="picker" placeholder="Choose a date">
<mat-datepicker-toggle matSuffix [for]="picker"></mat-datepicker-toggle>
<mat-datepicker #picker></mat-datepicker>
</mat-form-field>
import { MatDatepickerInputEvent } from '@angular/material/datepicker';
import { NativeDateAdapter, DateAdapter, MAT_DATE_FORMATS } from '@angular/material/core';
import { MomentDateAdapter, MAT_MOMENT_DATE_ADAPTER_OPTIONS } from '@angular/material-moment-adapter';
import * as moment from 'moment';
export const MY_FORMATS = {
parse: {
dateInput: 'LL',
},
display: {
dateInput: 'MM/DD/YYYY',
monthYearLabel: 'MMM YYYY',
dateA11yLabel: 'LL',
monthYearA11yLabel: 'MMMM YYYY',
},
};
export class MyDateAdapter extends NativeDateAdapter {
format(date: Date, displayFormat: Object): string {
return moment(date).format('MM/DD/YYYY');
}
}
@Component({
...
providers: [
{ provide: DateAdapter, useClass: MyDateAdapter },
{ provide: MAT_DATE_FORMATS, useValue: MY_FORMATS },
{ provide: MAT_MOMENT_DATE_ADAPTER_OPTIONS, useValue: { useUtc: true } },
],
})
以上是如何在 Angular 中使用 MatDatePicker 来选择日期的步骤。通过这个使用方法, 我们可以充分了解如何在Angular Material库中使用与日期有关的组件,以及为将日期格式化添加自定义日期适配器。