【发布时间】:2020-08-20 10:28:02
【问题描述】:
我正在使用 ant design 进行基于反应钩子的开发。我正在通过网络调用从数据库中检索日期,从数据库中检索到的日期看起来像“2020-09-01T05:02:00.000+0000”。它是一个字符串。我必须在我的页面中通过 antd datePicker 解析这个日期并显示日期值和时间值。虽然我已经成功设置了日期部分,但我坚持设置时间。这是我的代码,
########### 这是我的日期选择器 ###########
<DatePicker
name="Campaign-date"
defaultValue={moment(formData['Campaign-date'].split('T')[0])}
showTime={{
defaultValue: moment(formData['Campaign-date'].split('T')[1],'HH:mm'),
format: 'HH:mm'
}}
format={'YYYY-MM-DD HH:mm'}
style={{ width: '100%' }}
onChange={handleDateChange}
/>
########################## 这是我的 handleDateChange 函数 ###########################
const handleDateChange = date => {
setFormdata({
...formData,
'Campaign-date': date
.format('YYYY-MM-DD HH:mm')
.split(' ')
.join('T')
});
};
formData['Campaign-date'] 是从数据库中检索到的日期。我觉得 showTime 属性没有按预期工作。我想得到“05:02”的结果,但显示的值是“00:00”。
我尝试过不同的 showTime 变化,例如,
defaultValue: moment('05:02','HH:mm'),
//or
defaultValue: moment(formData['Campaign-date'],'HH:mm')
//or
defaultValue: moment(formData['Campaign-date'].split('T')[1].split('.),'HH:mm')
但没有任何效果。它始终将值设置为“00:00”。 我的 onChange 功能没有问题。它工作完美。日期/时间更改代码按预期工作。只是我页面上的视图没有显示正确的时间。
我真的很坚持。因此,非常感谢任何帮助。
【问题讨论】:
标签: reactjs react-hooks antd react-datepicker react-hook-form