Как очистить часовой пояс, связанный с объектом момент-часовой пояс - PullRequest
0 голосов
/ 28 марта 2019

Используя moment-timezone, если у вас есть моментный объект, установленный с часовым поясом, например, moment.tz('America/New_York'), как вы можете очистить часовой пояс и изменить момент на "местное" время?

В частности, moment.local()не работает (последующий вызов moment.tz() по-прежнему равен America/New_York).Я могу подтвердить, что мое местное время не America/New_York.

Единственное решение, которое я нашел, - установить недопустимый часовой пояс, например, moment.tz('local').Это записывает в консоль предупреждение о том, что вы пытались установить неправильный часовой пояс (раздражает), но очищает часовой пояс, связанный с объектом момента, возвращая его локальному объекту момента.Предупреждение о том, что moment-timezone выплевывает, подчеркивает, что это решение может сломаться в будущем, и, очевидно, это взлом.

Как правильно это сделать?

1 Ответ

0 голосов
/ 29 марта 2019

Обновление

Эта проблема была вызвана ошибкой в ​​moment-timezone. Начиная с версии, 0.5.24 , moment.local() должны корректно очищать часовой пояс, связанный с moment-timezone объектом.

Оригинал

В ... момент! Это похоже на ошибку в moment-timezone (см. # 738 , # 258 ). Текущий обходной путь, который я нашел, заключается в том, чтобы сначала использовать moment.utc() (который очищает часовой пояс и также устанавливает момент в режиме "utc"), а затем moment.local(). То есть moment.utc().local().

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