我有以下用于datepicker的HTML代码:
<mat-form-field class="input-form">
<input matInput [matDatepicker]="picker" (click)="picker.open()" [formControl]="fieldIndividuEducation.control">
<mat-datepicker-toggle matSuffix [for]="picker"></mat-datepicker-toggle>
<mat-datepicker #picker></mat-datepicker>
<mat-hint align="end">label</mat-hint>
</mat-form-field>我需要获取日期,然后将其插入到PGSQL数据库中。我有以下代码来检索它:
if(element.type == 'date' && element.control.value !== null) {
let month = element.control.value.getUTCMonth() + 1;
let day = element.control.value.getUTCDate() + 1;
let year = element.control.value.getUTCFullYear();
value = year + '-' + month + '-' + day;
}"+1“是因为默认情况下选择的日期是选择日期的前一天,我不知道为什么..但是如果我选择2020年5月1日,value的结果是: 2020-4-31
你有什么想法来检索正确的选择日期吗?
谢谢
发布于 2020-05-12 00:02:55
这是因为你得到的是UTC日期,而不是本地日期,这取决于你所在的位置,可能会有一天的差异。如果你只是做element.control.value.getMonth(),你会根据当地时间得到月份。另外,记住月份是从0开始的,所以1月份是'0‘,12月是'11’。
https://stackoverflow.com/questions/61730756
复制相似问题