Angular установить время по местному времени - PullRequest
0 голосов
/ 02 мая 2020

У меня проблема с DateTime.

let date = this.datepipe.transform(this.productForm.value.start_at, 'yyyy-MM-dd hh:mm:ss');
console.log(date);

result will always show as 2020-05-02 12:00:00

Предполагается, что DateTime показывает мое текущее время, а не всегда показывает 12:00:00. Мой часовой пояс - Азия / Токио

Ответы [ 2 ]

0 голосов
/ 02 мая 2020

Вам нужно будет создать новую дату и установить год, месяц и дату.

const [year, month, day] = this.productForm.value.start_at.split("-");
const currentDate = new Date();
currentDate.setDate(+day);
currentDate.setFullYear(+year);
currentDate.setMonth(+month - 1);
const formattedDate = this.datepipe.transform(currentDate, 'yyyy-MM-dd hh:mm:ss');

Вы можете добиться того же самого, если вы тоже создали new Date(this.productForm.value.start_at) и используете getDate, getFullYear и getMonth вместо раскол.

0 голосов
/ 02 мая 2020

добавили +0900, как вы находитесь в Токио, и считая время по Гринвичу + 0900

 import {formatDate } from '@angular/common';


    let date = new Date();
    const localDate = formatDate(date, 'dd-MM-yyyy hh:mm:ss a', 'en-US', '+0900');
    console.log(localDate);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...