[내가 보기 위해 정리하는 강의자료]
리덕스란 무엇일까? A state management system for cross-component or app-wide state.
스테이트에는 3가지 정의가 있다. local State, Cross-Component State, App-Wide State.
local State : 하나의 컴포넌트가 바뀌는데에 영향을 미치는 데이터이다. 이것은 하나의 컴포넌트에 종속되어 있다. 우리는 이런 state를 useState와 useReducer를 통해서 조작할 수 있다.
Cross-Component State : 이것은 여러가지 컴포넌트에 영향을 미치는 state이다. 이것을 사용하기 위해서는 prop chains혹은 prop drilling을 활용해서 데이터를 부모 자식간에 넘겨주어야 한다.
App-Wide State : 모든 컴포넌트에 영향을 미치는 데이터이다. 예를 들어서 로그인 기능도 생각해볼 수 있다. 이것 또한 prop chains혹은 prop drilling을 활용해서 데이터를 사용한다. 이 방식을 리액트 콘텍스트와 리덕스에서 사용하고 있다.
리액트 콘텍스트가 있는데 왜 굳이 리덕스를 이용하는가?
리액트 콘텍스트는 두가지 치명적인 단점이 있다.
1) Complex Setup / Management. 앱의 규모가 작다면 상관없지만, 크면 클수록 복잡해진다.
2)Performance. 데이터가 자주 바뀌는 경우에는 적절한 퍼포먼스를 발휘하지 못한다.
'React' 카테고리의 다른 글
[React] image 파일 압축해서 FormData형식으로 서버에 보내기 (0) | 2021.08.05 |
---|---|
[React] 리덕스의 작동원리 : 이론 (0) | 2021.07.10 |
[React] 라우팅이란 (0) | 2021.06.28 |
[React] ref사용하기 (0) | 2021.06.28 |
[React] 리덕스 훅 useSelector, useDispatch (0) | 2021.06.28 |