角度材质日期选择器(MatDatepicker)自动完成焦点对准的日期

时间:2018-11-20 12:53:43

标签: angular datepicker angular-material angular6 angular-material-datetimepicker

我在项目中使用角度材质/ mat-datepicker,并且每当用户在其中输入一位数字并失去焦点时,日期选择器就会自动完成,并带有 random 日期。

Example

只需输入1并失去焦点,或者输入5/5/20

日期选择器会自动添加日期

更新:另外,我正在使用反应式表单,并且正在使用该方法来验证输入

我可以禁用此功能吗?

1 个答案:

答案 0 :(得分:0)

我知道现在回答这个问题为时已晚。但是,我也遇到了反应式表单的同类问题,并通过以下方式禁用了MatDatePicker自动完成功能。

<mat-form-field>
   <input matInput #autocomplete placeholder="Choose a date" formControlName="datePicker">
   <input type="hidden" [matDatepicker]="picker" placeholder="Choose a date" formControlName="datePicker" (dateChange)="autocomplete.value = toFormattedDate($event.value)">
   <mat-datepicker-toggle matSuffix [for]="picker"></mat-datepicker-toggle>
   <mat-datepicker #picker></mat-datepicker>
</mat-form-field>

在组件中创建以下“ toFormattedDate”方法。

toFormattedDate(iso: string) {
  const date = new Date(iso);
  console.log(date);
  return `${date.getDate()}/${date.getMonth() + 1}/${date.getFullYear()}`;
}