我有一个UTC日期,需要显示当地时间。以下代码的结果显示该时间为UTC时间9:30 PM,但这不是我想要的。如果添加道具:tz =“ America / New_York”,时间将正确转换,但需要根据用户所在的位置进行更改。我检查了文档,但没有找到一种在未设置确切位置的情况下添加tz属性的方法。
<Moment
format="M/D/YYYY- h:mm A z"
utc
>
2018-12-06T21:30
</Moment>
答案 0 :(得分:0)
在react-moment
库中,我也看不到任何有关确定用户位置/时区的文档支持。您可能需要另一个库来确定这一点,例如https://www.npmjs.com/package/jstz。
答案 1 :(得分:0)
您必须添加本地属性
<Moment
format="M/D/YYYY- h:mm A z"
utc
local
>
2018-12-06T21:30
</Moment>
库中的文档: https://momentjs.com/docs/#/manipulating/local/
在反应片刻 https://www.npmjs.com/package/react-moment#local
在react-moment文档中,我看不到utc属性。
当您输入'utc'时,您表示日期是utc,并使用'local'属性调用了库的local函数,它将日期转换为本地时区中的本地日期浏览器
默认情况下,日期位于浏览器的时区中,因此,您必须说日期为“ utc”。如果您不带utc呼叫“本地”,则会返回相同的日期。