Skip to content

Commit 617da75

Browse files
committed
fix: 날짜 포맷 오류 해결
1 parent d0d5868 commit 617da75

File tree

2 files changed

+19
-14
lines changed

2 files changed

+19
-14
lines changed

src/features/event/ui/DatePicker.tsx

Lines changed: 11 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import DatePicker from 'react-datepicker';
33
import { ko } from 'date-fns/locale';
44
import 'react-datepicker/dist/react-datepicker.css';
55
import { FunnelState } from '../model/FunnelContext';
6-
import { formatDateLocalString } from '../../../shared/lib/date';
6+
import { formatDateLocalString, extractTimeFromDateString } from '../../../shared/lib/date';
77

88
interface DatePickerProps {
99
className?: string;
@@ -16,14 +16,6 @@ interface DatePickerProps {
1616
isLabel?: boolean;
1717
}
1818

19-
function extractTimeFromDateString(dateString?: string, defaultTime = '06:00') {
20-
if (!dateString) return defaultTime;
21-
const date = new Date(dateString);
22-
const hours = date.getHours().toString().padStart(2, '0');
23-
const minutes = date.getMinutes().toString().padStart(2, '0');
24-
return `${hours}:${minutes}`;
25-
}
26-
2719
const EventDatePicker = ({
2820
className,
2921
eventState,
@@ -82,13 +74,18 @@ const EventDatePicker = ({
8274
}, [eventState, initialStartDate, initialEndDate]);
8375

8476
useEffect(() => {
85-
if (eventState?.startDate) {
86-
setStartTime(extractTimeFromDateString(eventState.startDate, '06:00'));
77+
if (eventState?.startDate || initialStartDate) {
78+
const date = new Date(eventState?.startDate || initialStartDate!);
79+
setStartDate(date);
80+
setStartTime(extractTimeFromDateString(eventState?.startDate || initialStartDate, '06:00'));
8781
}
88-
if (eventState?.endDate) {
89-
setEndTime(extractTimeFromDateString(eventState.endDate, '23:00'));
82+
if (eventState?.endDate || initialEndDate) {
83+
const date = new Date(eventState?.endDate || initialEndDate!);
84+
setEndDate(date);
85+
setEndTime(extractTimeFromDateString(eventState?.endDate || initialEndDate, '23:00'));
9086
}
91-
}, [eventState?.startDate, eventState?.endDate]);
87+
}, [eventState?.startDate, eventState?.endDate, initialStartDate, initialEndDate]);
88+
9289

9390
const generateTimeOptions = () => {
9491
const options = [];

src/shared/lib/date.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,14 @@ export const formatISO = (date: Date, time: string): string => {
2222
return kstDate.toISOString();
2323
};
2424

25+
export const extractTimeFromDateString = (dateString?: string, defaultTime = '06:00') => {
26+
if (!dateString) return defaultTime;
27+
const date = new Date(dateString);
28+
const hours = date.getHours().toString().padStart(2, '0');
29+
const minutes = date.getMinutes().toString().padStart(2, '0');
30+
return `${hours}:${minutes}`;
31+
}
32+
2533
export const formatDateLocalString = (date: Date, time: string): string => {
2634
const [hours, minutes] = time.split(':').map(Number);
2735
const newDate = new Date(date);

0 commit comments

Comments
 (0)