如何清除与矩时区对象关联的时区

时间:2019-03-28 03:51:12

标签: moment-timezone

如果您设置了带有时区的矩对象,请使用moment-timezone,例如moment.tz('America/New_York'),如何清除时区并将时刻更改为“本地”时间?

值得注意的是,moment.local()不起作用(随后对moment.tz()的调用仍然等于America/New_York)。我可以确认我的当地时间不是America/New_York

我发现的唯一解决方案是设置一个无效的时区,例如moment.tz('local')。这会将一条警告记录到控制台,提示您已尝试设置无效的时区(烦人),但确实清除了与矩对象关联的时区,并将其返回到本地矩对象。 moment-timezone吐出的警告强调该解决方案将来可能会中断,这显然是黑客。

完成此操作的正确方法是什么?

1 个答案:

答案 0 :(得分:0)

更新

此问题是由moment-timezone中的错误引起的。从0.5.24moment.local()版本开始,应正确清除与moment-timezone对象关联的时区。

原始

此刻!这似乎是moment-timezone中的错误(请参见#738#258)。我发现的当前解决方法是先使用moment.utc()(清除时区,并将时刻设置为“ utc”模式),然后使用moment.local()。即moment.utc().local()