perf(mobile-schedule): selectedDate 참조 안정화
storedSelectedDate가 없을 때 매 렌더 new Date()가 생성돼 다수 useMemo/useEffect가 재실행되고 날짜 스트립이 반복 scrollIntoView되던 문제를, useMemo로 참조를 안정화(값 의미는 동일). Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
parent
11956a4669
commit
067618d792
1 changed files with 6 additions and 2 deletions
|
|
@ -36,8 +36,12 @@ function MobileSchedule() {
|
||||||
toggleCategory,
|
toggleCategory,
|
||||||
} = useScheduleStore();
|
} = useScheduleStore();
|
||||||
|
|
||||||
// 선택된 날짜 (store에 없으면 오늘 날짜)
|
// 선택된 날짜 (store에 없으면 오늘 날짜). 매 렌더 새 Date 생성을 막아
|
||||||
const selectedDate = storedSelectedDate || new Date();
|
// 다수 useMemo/useEffect가 불필요하게 재실행되지 않도록 참조 안정화.
|
||||||
|
const selectedDate = useMemo(
|
||||||
|
() => storedSelectedDate || new Date(),
|
||||||
|
[storedSelectedDate]
|
||||||
|
);
|
||||||
const setSelectedDate = (date) => setStoredSelectedDate(date);
|
const setSelectedDate = (date) => setStoredSelectedDate(date);
|
||||||
|
|
||||||
const [isSearchMode, setIsSearchMode] = useState(false);
|
const [isSearchMode, setIsSearchMode] = useState(false);
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue