React - Redux Toolkit(Immer기능)

최재홍·2023년 4월 21일
0
post-custom-banner

리액트에서의 상태는 불변성이 유지되어야 하기 때문에
https://velog.io/@along/사소한-삽질React의-불변성-순수함수
에서 과거에 헛짓거리를 했던 것처럼 useState로 상태를 관리하고 있는 변수를 임의로 조작하는 행위를 지양해야 한다고 했다.

그래서 setState()함수 내부에서나, 리듀서함수의 조건만족절 이후 함수부분에서도 상태관리하고 있는 변수 자체를 조작하면서 활용하면 리랜더링이 발생하지 않는 등의 문제상황이 생기곤 했다.

그래서 https://doesitmutate.xyz/ 에서 immutation(불변성)을 유지시켜주는 함수와 그렇지 않은 함수들을 구분해서 사용할 필요가 있었고, 꼭 필요한 경우에는 해당 변수를 깊은 복사를 해서 활용할 필요가 있었다.

하지만 Redux Toolkit을 쓰면서는 리듀서 함수 내부에서 state를 임의적으로 활용하거나 조작하는데 문제가 없다. 이는 Redux Toolkit에 내장되어 있는 Immer라는 기능 덕분이다.

post-custom-banner

0개의 댓글