Context API란?
- 리액트에서 Props의 전달흐름은 단방향이다.(부모 -> 자식)
- 하지만, 내려보내는 props가 많아지고, 컴포넌트 깊이가 길어지면, 관리가 힘들다.
Context API
는 컨텍스트 안에 포함괸 모든 레벨에서, props를 전달하지 않고, 어디서든 상태값에 접근 할 수 있는 방법을 제공해준다!
- 사용목적:
props drilling
을 피하기 위해서!
Redux는 무엇인가?
- 애플리케이션 전체에 대한 상태 중앙 저장소 역할을 하며 액션이라는 이벤트를 사용하여 애플리케이션의 상태를 예측 가능한 방식으로 업데이트 하기 위한 라이브러리이다.
- Reducer함수를 이용하여 상태 변경을 예측가능하게 만들고, 사이드이펙트 및 저장소 확장 개념으로 미들웨어를 사용한다.
(React-) Redux 의 목적 및 사례
- ui 레이어와 분리된 상태 관리 로직 작성이 필요할 때
- 서로 다른 ui 계층간에 상태 공유가 필요할 때
- Redux 미들웨어 기능을 빌려 액션이 전달 될 때 추가적인 로직이 필요할 때
Redux 상태의 유지
- dev tool 을 이용한 버그 디버깅
- Context가 ‘상태관리’가 아닌 이유
- 상태관리는 시간이 지남에 따라 상태가 변경되는 방식을 의미한다.
- 아래와 같은 경우를 상태관리라 한다.
- 초기 값을 저장한다.
- 현재 값을 읽을 수 있다.
- 값 업데이트가 가능하다.