본문 바로가기
개발 학습/프론트엔드

S2: React setState([...전개연산자])로 리렌더링

by StelthPark 2021. 10. 15.

useState 함수로 값을 주었지만 렌더링이 되지않고 컴포넌트로 전달한 state props가 변화가 없다?

 

 

...이렇게 점 세게를 찍는 문법을 spread operator라고 부른다.

[...array] 이렇게 사용하면 array를 해체한 후 배열에 넣는다.

결국엔 array원소가 들어가있는 새 배열이 리턴되는 것이다. 핵심은 새로운 주소값을 할당해 주는 것이다. 

 

 

전개연산자를 사용하지 않고 carItems로 state를 변경할때 cartItems와 동일한 주소를 참조하기 때문에 렌더링이 되지않으며 useEffect로 테스트 해보아도 반응이없다. 새로운 주소를 참조하기 위해 전개연산자로 값을 넣어주면 렌더링이 다시 된다.

'개발 학습 > 프론트엔드' 카테고리의 다른 글

S2: Redux  (0) 2021.10.18
S2: Event.stopPropagation()  (0) 2021.10.15
S2: React styled-components  (0) 2021.10.14
S2: useEffect  (0) 2021.10.07
S1: Props  (0) 2021.09.23

댓글