как исправить дату onEdit в angular

#angular #angular-reactive-forms

#angular #угловые реактивные формы

Вопрос:

В форме, в которой я использую средство выбора даты angular material. onEdit я хочу исправить дату с помощью даты формы, но она отображается пустой, но дата отображается на странице формы. Для того, чтобы я извлекал запись из базы данных в соответствии с идентификатором отправки onEdit.

Я попытался задать формат.В базе данных даты хранятся в формате 18.4.2019.

 form.patchValue({Date: order.Date});
 
 <mat-form-field>
  <input matInput [matDatepicker]="picker"formControlName="dDate" id="Date" readonly (click)="picker.open()"><mat-datepicker-toggle matSuffix [for]="picker"><mat-icon matDatepickerToggleIcon>date_range</mat-icon></mat-datepicker-toggle>
  <mat-datepicker #picker></mat-datepicker>
</mat-form-field>
 

onEdit дата должна быть исправлена, и в поле ввода я должен получить дату этой конкретной записи.

Ответ №1:

Предполагается order , что это an @Input() , используется ngOnChanges для реагирования на значения из входных данных:

 ngOnChanges(changes: SimpleChanges) {
  if (changes.order amp;amp; changes.order.currentValue) {
    this.form.patchValue({dDate: this.order.Date});
  }
}
 

В вашей разметке formControlName было « dDate «, которое отличается от вашего машинописного текста, но они должны совпадать.

Ответ №2:

 form.patchValue({Date: new Date().toLocaleString()});