This commit is contained in:
张成
2025-11-09 18:05:03 +08:00
parent 712ebe6463
commit 0090fc45c6
9 changed files with 211 additions and 110 deletions

View File

@@ -5,6 +5,14 @@ import { DialogCalendarCard } from '@/components/index'
import './TimeSelector.scss'
import dayjs from 'dayjs'
// 安全地解析日期字符串,兼容 iOS
const parseDate = (dateStr: string): Date => {
if (!dateStr) return new Date();
// 将 "yyyy-MM-dd HH:mm:ss" 转换为 "yyyy-MM-ddTHH:mm:ss"
const isoStr = dateStr.replace(/^(\d{4}-\d{2}-\d{2})\s(\d{2}:\d{2}(?::\d{2})?)$/, '$1T$2');
return new Date(isoStr);
};
export interface TimeRange {
start_time: string
end_time: string
@@ -39,7 +47,7 @@ const TimeSelector: React.FC<TimeSelectorProps> = ({
if (onChange) onChange({start_time, end_time})
}
const openPicker = (type: 'start' | 'end') => {
setCurrentTimeValue(type === 'start' ? new Date(value.start_time) : new Date(value.end_time))
setCurrentTimeValue(type === 'start' ? parseDate(value.start_time) : parseDate(value.end_time))
setCurrentTimeType(type)
setVisible(true)
}