Redux[리액트 앱의 State에 대한 또 다른 관점]

이유정·2023년 2월 8일
0

Redux, Next.js, TypeScript

목록 보기
12/18

Redux란?

: 상태 관리 시스템
: A state management system for cross-component or app-wide state

  • 데이터를 다수의 컴포넌트나 앱 전체에서 관리하도록 돕는다.

우리는 useState나 useReducer과 같은 리액트 상태관리 훅을 사용해서 어떤 데이터를 변경했다고 리액트에 알린다. => react는 ui를 업데이트한다.

상태 3가지

1) Local State

  • 하나의 컴포넌트에 속하는 상태
  • 예시) 사용자가 토글을 open해서 show more을 원할 때 토글의 상태값을 바꿔준다.
    => useState()나 useReducer() 를 사용한다.
    2) Cross-Component State
  • 여러개의 컴포넌트에 영향을 미치는 상태
  • 예시) 모달을 열고 닫는 상태
    => prop chains나 prop drilling 이 요구된다.
    3) App-Wide State
  • 전체 앱에 영향을 미치는 상태
  • 예시) 사용자 인증상태
    => prop chains나 prop drilling 이 요구된다.

React Context

  • 리액트의 내장 기능
  • 위의 문제들을 해결할 수 있다.
  • 크로스 컴포넌트와 앱 와이드 상태 관리를 단순화할 수 있다.
    => 리덕스도 같은 문제를 해결해 줄 수 있다.
    => 왜 리덕스가 또 필요한가?
profile
팀에 기여하고, 개발자 생태계에 기여하는 엔지니어로

0개의 댓글