React Hooks 기반
const [infoData, setInfoData] = useState({
major: {
name: "John Doe",
age: "24",
sex: "M",
},
minor:{
id: 4,
collegeRegion: "south",
}
});
위와 같은 설정일 때,
setInfoData((prevState) => ({
...prevState,
major: {
...prevState.major,
name: "Tan Long",
}
}));
이렇게 변경합니다.
prevState 를 파라미터로,
...prevState 로 이전 오브젝트 데이터를 복사해오고,
그 외에 새로운 값을 추가/변경 합니다. (=덮어 씌웁니다)
출처 : javascript - React Hooks useState() with Object - Stack Overflow
불변성 원칙 때문에 직접 바꿀 수 없기 때문에,
새로운 오브젝트를 만들되, 그 안에 값을 추가해서 만드는 방식입니다.
같은 방식으로 다른 Type의 객체 / 함수에 적용해볼 수 있습니다.
도움이 되셨다면 ♡공감 ↓광고클릭으로 저를 응원해주세요!!! :D
반응형
'개발 > javascript' 카테고리의 다른 글
Node.js 에서 Bash Script 출력(stdout, stderr) 문자열로 읽기 + 한글(EUC-KR) 인코딩 (0) | 2022.08.05 |
---|---|
React Array Toggle Element (리액트 배열 값 토글하기!) (0) | 2021.07.16 |
[Javascript] 당신의 머리를 터지게 만들 Instanceof (0) | 2020.12.17 |
[Javascript] instance of, arguments, callee, this, new (0) | 2020.12.16 |
자바스크립트만의 특징 몇가지 (ft. 호이스팅) + 예시 퀴즈 (0) | 2020.12.07 |