안녕하세요.여행하는 개발자입니다.
오늘은 React 리덕스(Redux)에 대해 알아보겠습니다.
리액트 리덕스(Redux)는 상태 관리 라이브러리로, 복잡한 앱 상태를 효율적으로 관리하는 데 사용됩니다. 애플리케이션의 상태를 단일 스토어에 저장하고, 액션과 리듀서를 통해 상태를 업데이트하며 컴포넌트 간에 데이터 흐름을 통제합니다. 이로써 예측 가능하고 유지보수가 쉬운 리액트 앱을 구축할 수 있습니다.
리덕스(Redux)란?
리덕스(Redux)란 무엇인지 궁금하네요❔
Redux는 JavaScript 앱을 위한 상태 관리 라이브러리로, 애플리케이션의 상태를 예측 가능하고 중앙에서 효과적으로 관리할 수 있도록 도와줍니다. Redux의 주요 개념은 다음과 같습니다.
- 액션(Actions)
- 상태 변화를 일으킬 때, 애플리케이션에서 발생하는 어떤 사건을 의미합니다. 액션은 일반적으로 JavaScript 객체이며, 'type' 필드를 가지고 있습니다.
- 리듀서(Reducers)
- 애플리케이션의 상태 변화를 처리하는 함수로, 현재의 상태와 액션을 받아 새로운 상태를 반환합니다. 리듀서는 순수 함수로 작성되어야 합니다.
- 스토어(Store)
- 애플리케이션의 상태를 담고 있는 객체로, 액션을 디스패치하고, 리듀서를 통해 상태를 업데이트할 수 있습니다.
- 디스패처 (Dispatcher)
- 액션을 리듀서로 보내는 메서드로, 스토어의 dispatch() 메서드를 사용하여 액션을 전달합니다.
리덕스(Redux)의 주요 이점
리덕스(Redux)의 주요 이점은 ❔
- 단일 스토어
- React Redux는 단일 스토어를 사용하므로 상태를 효과적으로 관리할 수 있습니다. 이는 상태의 일관성을 유지하고 디버깅을 간편하게 만듭니다.
- 컴포넌트 분리
- Redux는 상태를 외부 스토어로 분리하여 컴포넌트 간의 상태 공유를 용이하게 합니다. 이로써 컴포넌트들은 더욱 단순하고 재사용 가능해집니다.
- 무거운 로직 분리
- 비동기 작업이나 복잡한 비즈니스 로직은 리듀서 밖에서 처리할 수 있습니다. Middleware를 사용하여 비동기 작업을 쉽게 관리할 수 있습니다.
리덕스(Redux) 개발 환경
리덕스(Redux) 개발환경이 궁금하네요 ❔
React Redux를 개발 환경에서 사용하려면 주로 npm을 통해 설치하고, 액션, 리듀서, 스토어를 정의하여 사용합니다.
- npm 설치
$ npm install react-redux
- Redux 스토어 생성
- 스토어를 생성하고 React 애플리케이션에 연결하는 방법은 다음과 같습니다.
{`
import { createStore } from 'redux';
import { Provider } from 'react-redux';
import rootReducer from './reducers'; // 여러 리듀서들을 합친 루트 리듀서
const store = createStore(rootReducer);
ReactDOM.render(
,
document.getElementById('root')
);
`}
'개발 Story > React' 카테고리의 다른 글
[React] Router란? (1) | 2023.11.14 |
---|---|
[React] useState란? (0) | 2023.11.14 |