У меня есть простая система, которая в форме создания узла позволяет пользователю выбирать даты начала и окончания, а также часы и минуты:
Проблема в том, что дата сбивается где-то посередине, или я не знаю, как ее преобразовать.
В базе данных сохраняются два значения следующим образом:
start: "2019-08-01T14:00:00.000Z"
end: "2019-08-01T16:00:00.000Z"
Кажется правильным, так как в средстве выбора даты я выбрал 14:00 и 16:00. Затем, используя momentjs и react-big-calendar, я пытаюсь поместить это событие в календарь. Вроде каждый раз +3 часа ставит. Я предполагаю, что это потому, что он сохраняет его в формате UTC, а я живу в Восточной Европе, что составляет +3 часа от UTC.
Что странно, так это то, что я уже получаю обратное время, преобразованное в свое собственное, когда я делаю запрос к базе данных:
Thu Aug 01 2019 17:00:00 GMT+0300 (Eastern European Summer Time)
Может ли кто-нибудь помочь мне? Я ожидаю, что те же часы будут возвращены и отображены, поскольку я их сохраняю, то есть, если я выберу 14:00, это должно быть 14:00. Я думаю, что решение здесь будет состоять в том, чтобы игнорировать часовые пояса и всегда отображать все в формате UTC? Но как это сделать? У меня есть доступ к momentjs, если это поможет. Я пробовал что-то вроде этого:
moment.utc(event.start);
Но он по-прежнему возвращает одно и то же значение, а именно:
Thu Aug 01 2019 17:00:00 GMT+0300 (Eastern European Summer Time)


moment.utc().zone(3).format()илиmoment().format()- person Jargal   schedule 23.09.2019