본문 바로가기
React/errors

[error] Uncaught Error: Too many re-renders. React limits the number of renders to prevent an infinite loop.

by tokkiC 2022. 12. 4.

랜더링 할때마다 상태가 변해서 무한 랜더링이 일어나는 에러

에러 원인


특정 이벤트 발생 시, 상태 조작이 아니라, 그냥 매 랜더링마다 상태 조작이 일어나고 있다는 에러다
onClick 등에 콜백으로 상태 조작을 걸지 않고 바로 상태 조작 함수를 넣었거나,
이벤트와 상관없이 매 랜더링마다 항상 참인 조건으로 상태 조작 함수를 넣어서 매 랜더링 마다 상태 조작으로 인해 랜더링 되어 랜더링 무한루프에 빠진 것이다

 

 

해결 방법


onClick 에 상태 조작 함수가 콜백 함수로 제대로 들어갔는지 확인,
항상 true 가 성립하는 조건에서 상태 조작 함수를 넣었는지 확인
특정 조건, 특정 이벤트에서만 상태 조작 조건문이 동작하도록 수정하자

댓글