- 토이프로젝트를 시작하면서 스택정리를 하던도중 그런생각이 들었다
- 단순히 Redux Toolkit을 쓰자고 했던 이유는 Redux보다 쉬워서 뿐이였지 어떤 차이가 있는지는 자세하게 알아보려 하지 않았던것 같다
- 근데 이번에는 무슨 차이가 있는지 궁금해서 이 글을 적게된다
- Redux 자사에서 공식적으로 효율적인 개발을 위해서 만든 Toolkit임
- 기존 Redux의 문제점을 먼저 설명하고 가는게 좋을듯 하다
- 스토어 구성이 너무 복잡하다
- 작업을 수행하기 위해선 많은 패키지를 추가해야한다
- 너무 많은 상용구 코드가 필요하다
- 이 문제점들을 툴킷화 시킨게 Redux Toolkit이다
- Redux를 사용하기 위해서 무조껀 Toolkit을 사용해야하는건 아니지만 모든 Redux사용처에선 Toolkit을 사용하는걸 권장함
제공하는 기능들
createReducer
- switch문을 작성하는 것 대신 간단하게 Reducer를 만들 수 있도록 도와줌
createAction
- Reducer에 작성한 것들을 기반으로 Action들을 만들어줌
createSlice
- reducer의 이름, 초기상태, reducers 등을 간편하게 만들 수 있도록 도와줌
createAsyncThunk
- createAction을 비동기로 만들 수 있도록 도와줌
createSelector
- Store에서 상태를 효율적으로 저장하도록 도와줌