Как опубликовать дату в сочетании с часами с React JS? - PullRequest
1 голос
/ 16 июня 2020

Когда я пытаюсь сделать почтовый запрос с помощью React js, чтобы сделать оговорку, время уменьшается на два часа, в то время как в состоянии это именно то время, которое я хотел, в то время как в БД оно сохраняется на два часа Меньше. Пример Я пытаюсь сохранить 11 часов вместо 9 часов.

Вот как отформатировать дату и время перед передачей их в вызов api const booking_date = new Date(year, month, day, hour, minute);

Ответы [ 2 ]

0 голосов
/ 16 июня 2020

Можно использовать момент. js. Если у вас есть строка даты, преобразуйте ее с помощью moment. js перед отправкой почтового запроса, или если у вас нет строки даты, вам просто нужно выбрать текущую дату и время, а затем вы можете использовать, как показано ниже, с желаемый формат вам нужен. Я бы рекомендовал всегда использовать UT C для внутреннего использования и преобразовывать в часовой пояс только при отображении даты пользователю

import moment from "moment";

let date = moment().format('MM-DD-YYYY hh:mm:ss')} // It will return 06-16-2020 08:54:00
0 голосов
/ 16 июня 2020

Вы можете использовать временную метку, чтобы получить более точную согласованную дату

const booking_date = new Date(year, month, day, hour, minute).getTime();

Затем, если вам нужна фактическая строка даты, вы можете преобразовать ее обратно в дату, используя new Date(). Вероятно, это проблема с часовым поясом, поэтому отметка времени смягчит это, а также даст вам дополнительный бонус в виде возможности отправлять меньше данных в вызове api.

В качестве альтернативы, если вам НУЖНА строковая дата, вы можете использовать:

new Date().toUTCString()

, который преобразует дату в строку UT C, которая согласована во всем мире (это даст вам одно и то же значение независимо от вашего местоположения), поскольку он использует стандартизированный часовой пояс UT C .

Подробнее см. Здесь: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...