来自 React Material-UI 的 DateTimePicker 不显示时区

问题描述 投票:0回答:0

过去 2 年我一直在使用 MUI React 库DateTimePicker。今天我决定升级我使用的项目的所有依赖项,我注意到 DateTimePicker 不再工作了。搜索文档,发现他们更改了该组件的一些属性,其中有

value
属性。正如他们在这里所说https://mui.com/x/migration/migration-pickers-v5/#update-the-format-of-the-value-prop

以前,可以提供您的日期的任何格式 管理库能够解析。例如,你可以通过 value={new Date()} 使用 AdapterDayjs 时。这种行为带来了 很多混乱。

在 v6 中,value prop 期望的格式与任何 其他持有日期的道具

现在属性需要一个

Date
对象。在以前的版本中,我能够在 GMT 中显示带有时区的日期和时间,因为我可以传递字符串而不是
Date
,但现在我无法再管理它了。这是我的一段代码:

import { LocalizationProvider } from '@mui/x-date-pickers'
import { DateTimePicker } from '@mui/x-date-pickers'
import { AdapterDateFns } from '@mui/x-date-pickers/AdapterDateFns'

//some code

<LocalizationProvider dateAdapter={AdapterDateFns} >
    <DateTimePicker
        //other properties
        value={myDate}
        format='yyyy-MM-dd HH:mm:ss xxx'            
    />
</LocalizationProvider>

假设

myValue="2023-05-04T14:26:36.118+02:00"
(来自数据库的值),我希望DateTimePicker 呈现
2023-05-04 14:26:36 GMT+2
。我最好的尝试是
2023-05-04 14:26:36 xxx
,但没有任何关于时区的信息(在我的情况下这是强制性的)。据我了解,无法显示时区,因为
format
属性是建立在
views
属性上的,它是一个对象,可以具有与 year、month、day、hour、minutes 相关的内部键和值第二个(根本没有时区)。我对么?有没有办法在 DateTimePicker 组件中显示时区?谢谢!

javascript reactjs material-ui timezone datetimepicker
© www.soinside.com 2019 - 2024. All rights reserved.