отображение даты в DatePicker не отображается, пока не обновлено - PullRequest
0 голосов
/ 25 октября 2019

У меня есть функция выбора даты, которую я установил для установки динамической даты в качестве значения по умолчанию.

<div *ngIf="(user$ | async) as user">
  <div *ngIf="(userPrivate$ | async) as userPrivate">
    <div class="row">
      <p class="col-4">Date of Birth: &nbsp;</p>
      <div *ngIf="!editState || editValue !=  (userPrivate.date_of_birth)" class="col-8">
        <p>{{getDate(userPrivate.date_of_birth)}}
          <i (click)="editUser($event,  userPrivate.date_of_birth)" class="fa fa-pencil mt-2"></i>
        </p>
      </div>
      <div *ngIf="editState && editValue == userPrivate.date_of_birth" class="col-8">
        <form class="row">
          <input matInput [matDatepicker]="picker1" [max]="tomorrow" placeholder="Date of Birth" #dob
            [value]="this.userdob">
          <mat-datepicker-toggle matSuffix [for]="picker1"></mat-datepicker-toggle>
          <mat-datepicker #picker1></mat-datepicker>
          <i (click)="updateUser( user, userPrivate,  dob.value)" class="fa fa-save mt-2 col-3"></i>
        </form>
      </div>
    </div>
  </div>
</div>

в [value]="this.userdob" дата конвертируется из формата unix в формат даты

var temptdob = this.userService.userdob;
this.userdob = new Date(temptdob * 1 );  

При первом входе на страницу, this.userdob будет неопределенным, но если бы я былчтобы переключиться и вернуться на эту страницу, тогда он загрузит дату во ввод. Почему это так и как я могу это исправить?

...