Javascript 将时间转换为矩时区中的特定时区
我有一个日期Javascript 将时间转换为矩时区中的特定时区,javascript,datetime,react-native,timezone,momentjs,Javascript,Datetime,React Native,Timezone,Momentjs,我有一个日期2018-06-19 09:06:29。它是如何存储在数据库中的。我正在使用时刻时区并调用此函数 function getDateString(t, tz) { return moment() .tz("America/Chicago") .format('l'); } 在这里,我知道我的时区是“美国/芝加哥”,是“UTC-5小时”。我应该在我作为辩论通过的时间前5小时得到时间 在我升级react之前,此功能一直工作正常。有人知道可能是什么问题吗 这些是我当
2018-06-19 09:06:29
。它是如何存储在数据库中的。我正在使用时刻时区
并调用此函数
function getDateString(t, tz) {
return moment()
.tz("America/Chicago")
.format('l');
}
在这里,我知道我的时区是“美国/芝加哥”,是“UTC-5小时”。我应该在我作为辩论通过的时间前5小时得到时间
在我升级react之前,此功能一直工作正常。有人知道可能是什么问题吗
这些是我当前的react设置
"expo": "^27.0.0",
"moment": "^2.22.2",
"react": "16.3.1",
"react-moment": "^0.7.0",
"moment-timezone": "^0.5.17",
"react-native": "https://github.com/expo/react-native/archive/sdk-27.0.0.tar.gz",
"react-native-swipeable": "^0.6.0",
"react-navigation": "1.5.11"
根据我的评论,我不确定到底出了什么问题(以及它过去在你这边是如何工作的),但以下是它对我应该如何工作:
使用日期时间创建一个时刻,指定该时刻表示为utc,使用moment.utc()
使用moment.tz()
这将产生如下结果:
function getDateString(t, tz) {
return moment.utc(t, 'YYYY-MM-DD HH:mm:ss')
.tz("America/Chicago")
.format('l');
}
根据我的评论,我不确定到底出了什么问题(以及它过去在你这边是如何工作的),但以下是它对我应该如何工作:
使用日期时间创建一个时刻,指定该时刻表示为utc,使用moment.utc()
使用moment.tz()
这将产生如下结果:
function getDateString(t, tz) {
return moment.utc(t, 'YYYY-MM-DD HH:mm:ss')
.tz("America/Chicago")
.format('l');
}
“此函数工作得很好”在我看来,此函数与我猜想的日期/时间参数t
没有任何关系。另外,请给出您得到的确切输出,以及您过去得到的输出,对于日期时间作为数据是什么,以及它如何表示为字符串/消息,经常会有一些混淆,在所有花哨的时区和语言环境中,“这个函数工作得很好”在我看来,这个函数对我猜想的日期/时间参数t
没有任何作用。另外,请给出您得到的确切输出,以及您过去得到的输出,对于日期时间作为数据是什么,经常会有一些混淆,以及它是如何表示为字符串/消息的,以及所有花哨的时区和语言环境