ToDolist하면서 코드 이해하기
const handleCheckClick = (itemId) => { setCheckedItems((prevState) => ({ ...prevState, [itemId]: !prevState[itemId], })); }; ...prevState는 이전 상태 객체의 모든 속성을 새로운 객체에 복사한다. 그리고 그 뒤에 [itemId]: !prevState[itemId]를 추가하여, 해당 itemId의 속성 값만 새로운 값으로 변경한다. 이전 상태 객체의 모든 속성을 복사하고, 그 중에서도 itemId의 속성 값만 변경하는 이유는, 다른 항목의 체크 여부는 변경되지 않고, 현재 클릭한 항목의 체크 여부만 변경되기 때문이다. 즉, 이전 상태 객체를 복사하여 새로운 상태 객체를 만들어 업데이트하면, 현재 클릭..
codestates/section4
2023. 4. 2. 18:53