본문 바로가기

FrontEnd/React

Redux(리덕스) 란?

728x90

Redux란

JavaScript(자바스크립트) 상태관리 라이브러리이다. Redux의 본질은 Node.js 모듈이다.

상태 관리 도구(State Management Tools) 란?

React에서 State는 Component 안에서 관리된다.

 

Component 간의 정보공유

자식컴포넌트 간의 다이렉트 데이터 전달은 불가능하다.

자식 컴포넌트 간에 데이터를 주고 받을 때는 상태를 관리하는 부모 컴포넌트를 통해서 주고받는다.

자식이 너무 많아지면 상태관리가 매우 복잡해진다.

상태를 관리하는 상위 컴포넌트에서 계속 내려받아야한다. (Props drilling)

 

상태 관리의 복잡성을 해결해주는 라이브러리를 활용한다.

1. 전역 상태 저장소 제공

2. Props drilling 이슈 해결

 - 예를들어, <A> 라는 컴포넌트에 상태가 있고, <I>라는 컴포넌트가 해당 상태를 사용한다고 하면, 그중간에 존재하는 <C>, <G> 등은 상태가 필요하지 않음에도, 컴포넌트에 props를 만들어 자식 컴포넌트에 넘겨주어야 했다. 이를 props drilling(프로퍼티 내려꽂기) 문제라고 부린다. 전역상태 저장소가 있고, 어디서든 해당 저장소를 접근 할 수 있으면 이러한 문제는 해결된다.

상태를 관리하는 툴 종류

- React Context

- Redux

- MobX

 

React Context로 전역적으로 사용하는 State를 만들 수 있다는것은 알았지만 상태를 관리해주는 라이브러리가 있다는건 알고있지 못하였다.

728x90

'FrontEnd > React' 카테고리의 다른 글

리액트 입문자료  (0) 2023.07.25