리액트를 사용하면서 자주 만나볼 수 있는 버그들에 대한 대처방법
dataId의 useRef의 초기값을 변경
해주기function App() {
...
// 일기 id로 사용
// dummyData를 사용하게 될 경우 key의 초기값 변경
const dataId = useRef(6);
...
}
const DiaryList = ({diaryList}) => {
const navigate = useNavigate();
const [sortType, setSortType] = useState("latest");
const [filter, setFilter] = useState("all");
const getProcessedDiaryList = () => {
const filterCallBack = (item) => {
if(filter === "good") {
return parseInt(item.emotion) <= 3;
}
else {
return parseInt(item.emotion) > 3;
}
};
const compare = (a, b) => {
if(sortType === "latest") {
return parseInt(b.date) - parseInt(a.date);
}
else {
return parseInt(a.date) - parseInt(b.date);
}
};
타입스크립트를 배울 기회가 올 경우 이런 단순한 오류를 쉽게 바로 잡을 수 있음
new Date 객체는 시간, 분, 초까지 입력
할 수 있기 때문에 그 날의 끝인 시간 설정을 인식할 수 있음 ✔️ new Date 객체
src/pages/Home.js
const lastDay = new Date(
curDate.getFullYear(),
curDate.getMonth() + 1,
0, 23, 59, 59
).getTime();
💬 버그 수정!