React에서 state를 직접 변경하지 않는 이유
- state를 직접 변경하지 않고, setState를 사용하는 이유
- immutable(불변성)을 유지하기 위함, 원본 훼손으로 인한 에러를 방지하는 기능
- 주소값이 변경이 되어지기 때문에 상태를 트래킹을 할 수 없게 된다
- React는 state의 변경을 감지하고 리렌더링을 한다
- state를 직접 변경하게 되면 react는 state의 변경을 인지하지 못하고 리렌더링 또한 정상적으로 이루어지지 않는다
- 이런 상황을 방지하기 위해 setState를 통하여 state객체를 업데이트 해야, react에서 state의 변경을 정상적으로 인지하게 된다