为什么Angular Datepicker发送错误的日期?

问题描述 投票:0回答:1

我有日期选择器:

    <input
        type="text"
        formControlName="startDate"
        [ngClass]="{ 'has-error': form.get('startDate').invalid }"
        [matDatepicker]="picker"
        class="materialDatePickerInput"
        placeholder="{{ 'select_date' | translate }}"
      />
      <mat-datepicker-toggle
        matSuffix
        [for]="picker"
      ></mat-datepicker-toggle>
      <mat-datepicker #picker></mat-datepicker>

我选择了日期选择器中的日期:01.01.2000,但它发送到服务器的方式如下:

1999-12-31T20:00:00.000Z

为什么转换为错误的日期?

angular angular-material angular5 angular8
1个回答
1
投票

没有。如评论中所述,这是一个时区问题。让我解释一下。

您正在使用UTC格式的时间。我的猜测是您自己的时区为UTC +2。因此,发生的事情是您选择一个日期,日期选择器选择的日期为00时间,当时间转换为2小时后约定丢失。

不是另一个日期,而是另一个时区。

© www.soinside.com 2019 - 2024. All rights reserved.