Angular 7和Angular material日期选择器在从mysql服务器接收日期时将按钮设置为禁用

Angular 7和Angular material日期选择器在从mysql服务器接收日期时将按钮设置为禁用,angular,datepicker,angular-reactive-forms,angular7,Angular,Datepicker,Angular Reactive Forms,Angular7,我有一个材料日期选择器,它由mysql数据库发送的值设置 该按钮始终处于禁用状态,但不应被禁用,因为日期选择器已包含值。但是,当我使用日期选择器将值更改为另一个日期时,该按钮被启用 这里是脚本,我使用日期的静态值来模拟来自服务器的相同值: 服务器返回的值为2018-2-12 00:00:00,并显示在日期选择器中,如我的项目上的2018年2月12日,但在stackblitz上显示为2018年2月12日00:00:00 html脚本: <form [formGroup]="formGroup

我有一个材料日期选择器,它由mysql数据库发送的值设置

该按钮始终处于禁用状态,但不应被禁用,因为日期选择器已包含值。但是,当我使用日期选择器将值更改为另一个日期时,该按钮被启用

这里是脚本,我使用日期的静态值来模拟来自服务器的相同值:

服务器返回的值为2018-2-12 00:00:00,并显示在日期选择器中,如我的项目上的2018年2月12日,但在stackblitz上显示为2018年2月12日00:00:00

html脚本:

<form [formGroup]="formGroup">
    <mat-card>
        <mat-card-content>
            <h2 class="example-h2">Datepicker</h2>
            <mat-form-field color="warn" appearance="outline">
                <input matInput id="date_added" [max]="maxDate" [matDatepicker]="picker" [value]="dateFormat"
                  formControlName="date_added" placeholder="Date Added">
                <mat-datepicker-toggle matSuffix [for]="picker"></mat-datepicker-toggle>
                <mat-datepicker #picker></mat-datepicker>
              </mat-form-field>&nbsp;
  </mat-card-content>
</mat-card>
 <button mat-raised-button color="warn" (click)="updateHouseholdData()" [disabled]="!formGroup.valid">
            <mat-icon>update</mat-icon>Update
          </button> 
</form>
{{formGroup.controls.date_added.errors | json}}
<br>
{{formGroup.controls.date_added.value | json}}

如何将来自mysql服务器的日期转换为材料日期选择器可读的日期,并启用“保存”按钮?

将日期转换为javascript日期对象,如下图所示,然后进行修补。而不是设置值

从输入中删除值

ngOnInit()
{
   this.formGroup.get('date_added').patchValue(new Date('2/14/2018'));
  // this.dateFormat = '2/14/2018';
}

像这样将日期转换为javascript日期对象,并将其修补为表单。而不是设置值

从输入中删除值

ngOnInit()
{
   this.formGroup.get('date_added').patchValue(new Date('2/14/2018'));
  // this.dateFormat = '2/14/2018';
}