React

[React] 상태 관리 🗂

이진지니지니진 2023. 2. 23. 21:28

상태

‘UI에 동적으로 표현될 데이터(변하는 데이터)’ 

 

Side Effect

함수(또는 컴포넌트)의 입력 외에도 함수의 결과에 영향을 미치는 요인

ex) 네트워크 요청(백엔드 API 요청)

 

상태의 두 가지 구분

로컬 상태 : 특정 컴포넌트 안에서만 관리되는 상태

다른 컴포넌트와 데이터를 공유하지 않는 폼(form) 데이터

input box, select box 등과 같이 입력값을 받는 경우

 

전역 상태 : 프로덕트 전체 혹은 여러 가지 컴포넌트가 동시에 관리하는 상태

다른 컴포넌트와 상태를 공유하고 영향을 끼치는 상태 데이터 로딩 여부(로딩 중) 상태 역시, 앱 전반에 영향을 미침

서로 다른 컴포넌트가 동일한 상태를 다룬다면, 이 출처는 오직 한 곳이어야 함

'하나의 출처'는 '전역 공간'이라고 할 수 있음

데이터 무결성
데이터의 정확성을 보장하기 위해 데이터의 변경이나 수정 시 제한을 두어 안정성을 저해하는 요소를 막고 데이터 상태들을 항상 옳게 유지하는 것
-> 무결성을 위한 방법론 신뢰할 수 있는 단일 출처(Single source of truth): 동일한 데이터는 항상 같은 곳에서 데이터를 가지고 온다.

라이트 모드 / 다크 모드 테마 설정

국제화(Globalization) 설정

Undo/Redo를 위한 History 기능

 

 

상태 관리를 위한 툴 

  • React Context
  • Redux
  • MobX

-> 전역 상태 저장소 제공

-> Props drilling 이슈 해결

'React' 카테고리의 다른 글

[Redux] 상태관리 라이브러리 🗂  (1) 2023.02.24
[React] 리액트 훅 useRef  (1) 2023.02.21