如何从React DatePicker获取UTC+1



我正在使用React DatePicker来获取预订的日期和时间。

一切似乎都正常,我得到了正确的日期,它会被发送到数据库,但如果我选择10:30作为时间,我到达数据库的时间是9:30,因为显然使用了UTC,但我处于UTC+1。

我尝试了以下方法转换为UTC+1,但这两种方法都不起作用。我还能试试什么?

第一种方法:

const date1 = new Date()
const inc = 1000 * 60 * 60 // an hour
const _date = new Date(date1)
const [startDate, setStartDate] = useState(
new Date( _date.getTime() + inc )
);

第二种方法:

function addHoursToDate(date, hours) {
return new Date(new Date(date).setHours(date.getHours() + hours));
}
const myDate = new Date();
const [startDate, setStartDate] = useState(
addHoursToDate(myDate, 1 )
);

尝试将数据库中的日期保存为自Unix Epoch以来的毫秒。通过这种方式,您可以在客户端中显示正确的日期,而无需担心时区。

const yourDate = new Date();
const millisSinceUnixEpoch = yourDate.getTime();
...save on db...
...get from db...
const yourDate = new Date(millisSinceUnixEpochFromDb); 

相关内容

  • 没有找到相关文章

最新更新