日期管道在 Html 插值中工作正常但在 Mat-DatePicker 输入字段中不工作

Date pipe is Working fine in Html Interpolation but not Working in Mat-DatePicker Input Fields

当用户使用 mat Datepicker 选择日期时,我想以 dd/MM/YYYY 格式显示日期,但是当我在 Datepicker 中使用 Datepipe 时,它​​在我们选择时不显示任何日期

   <mat-form-field class="box">
    <input matInput [matDatepicker]="picker" placeholder="Generate Date" maxlength="10px" [readonly]="isNew1"
      [ngModel]="quotation?.generateDate | date: 'dd/MM/yy'"
      (ngModelChange)="quotation.generateDate=$event" [ngModelOptions]="{standalone: true}">
    <mat-datepicker-toggle matSuffix [for]="picker"></mat-datepicker-toggle>
    <mat-datepicker [disabled]="isNew1" #picker></mat-datepicker>
  </mat-form-field>

确保您在 .ts 中导入了 DatePipe

import { DatePipe } from '@angular/common';

constructor(private date: DatePipe)

注意:如果静态注入Datepipe出错,请在module.ts文件中导入DatePipe

如果这不能解决您的问题,那么您可以使用日期选择功能将您的日期转换为您喜欢的格式,如下所示:

<mat-form-field class="box">
   <input matInput [matDatepicker]="picker" 
      placeholder="Generate Date"
      maxlength="10px"
      [readonly]="isNew1"
      [ngModel]="quotation?.generateDate"
      (ngModelChange)="onDateSelection(quotation?.generateDate)"
      [ngModelOptions]="{standalone: true}"
   >
   <mat-datepicker-toggle matSuffix [for]="picker"></mat-datepicker-toggle>
   <mat-datepicker [disabled]="isNew1" #picker></mat-datepicker>
</mat-form-field>

现在在您的 .ts 文件中:

import { DatePipe } from '@angular/common';

export class XComponent{

    constructor(private date: DatePipe)

    onDateSelection(date: Date): string {
        return this.date.transform(date, 'yyyy-MM-dd');
    }

}

以下是可用的 angular 日期管道格式:https://angular.io/api/common/DatePipe