React Error : length undefined (setState return)

김대은·2022년 7월 20일
0

리액트를 공부하던중...

Uncaught TypeError: Cannot read properties of undefined (reading 'length')

갑자기 이런 에러가 나왔다...

length가 undefined 라는데.. 분명 배열에 .length를 붙였는데 말이다..

구글링을 하던중 똑같은 문제를 겪은 사람을 보았다.

setTries((prevTries) => ([...prevTries, { key: value }]));

리리액트 훅에서의 setState에선 {} 중괄호가 아닌 () 소괄호로 리턴을 해주어야 한다고 한다.
보통 화살표 함수는 ()=>{}가 습관이 되어있어서 이것도 그렇게 썼는데,
리액트 훅의 setState는 state를 완전히 '새로 변경되는 것'으로 재설정하고 리턴해주는 작업이기 때문에 {}만 쓰면 setState가 리턴을 하지 않으므로 제대로 작동이 되지 않는 것이었다.

profile
매일 1% 이상 씩 성장하기

0개의 댓글