我有一个 date_of_birth 字段,其中保存了一个纪元字符串。我想使用角度材料日期选择器来更改日期,这可以通过将其转换为
//convert matDatepicker timestamp format to epoch and save
var newDOB = new Date(privateUser.date_of_birth).getTime().toString();
privateUser.date_of_birth = newDOB;
在将其存储到数据库之前,但是当尝试在日期选择中将其显示为默认日期时,我不太确定如何还原它。
这是我目前的代码
<div *ngIf="(userPrivate$ | async) as userPrivate">
<form (ngSubmit)="updateUser(user, userPrivate)">
<mat-form-field >
<input matInput type="text" [(ngModel)]="user.username" name="username" placeholder="Username">
</mat-form-field >
<mat-form-field >
<input matInput [matDatepicker]="dp" placeholder="Date of Birth" [(ngModel)]="userPrivate.date_of_birth" name="date_of_birth">
<mat-datepicker-toggle matSuffix [for]="dp"></mat-datepicker-toggle>
<mat-datepicker #dp >
</mat-datepicker>
</mat-form-field>
</form>
</div>
当我尝试添加
<mat-form-field >
<input matInput [matDatepicker]="dp" placeholder="Date of Birth" [formControl]="userPrivate.date_of_birth" [(ngModel)]="userPrivate.date_of_birth" name="date_of_birth">
<mat-datepicker-toggle matSuffix [for]="dp"></mat-datepicker-toggle>
<mat-datepicker #dp >
</mat-datepicker>
</mat-form-field>
我会收到一个错误,因为它无法读取该值,它也无法通过添加从纪元转换它的函数来接受我试图做的任何事情。
<mat-form-field >
<input matInput [matDatepicker]="dp" placeholder="Date of Birth" [formControl]="getDate(userPrivate.date_of_birth)" [(ngModel)]="userPrivate.date_of_birth" name="date_of_birth">
<mat-datepicker-toggle matSuffix [for]="dp"></mat-datepicker-toggle>
<mat-datepicker #dp >
</mat-datepicker>
</mat-form-field>
getDate(date)
函数_
getDate(date){
// convert Epoch time to timestamp format
var newDate= new Date(date).getTime();
return newDate;
}
我应该如何处理这个问题,以便我可以输入日期以将 date_of_birth 值显示为默认值?