[React]Redux 흐름.

UkiUkhui·2021년 11월 21일
0

React 공부중

목록 보기
23/25

리덕스 왜 사용할까?

  • 상태 관리를 컴포넌트 외부에서 할 수 있다

1. 스토어 설정

  • 프로젝트의 상태에 관한 데이터들

2. 컴포넌트의 스토어 구독(subscribe)

  • 스토어 구독 시에 스토어에 특정 함수가 전달되고, 스토어의 상태값이 변동되면 이 함수를 통해 알려줌(리스너)

3. 스토어에 상태를 변경하라고 알려주기(dispatch)

  • 컴포넌트에 이벤트가 생겨서 상태를 변경해야할 일이 생겼을 때, Dispatch(action) 형태로 액션을 스토어에 던져줌.
  • 액션 : 상태에 변화를 일으킬 때 참조하는 객체, 필수적으로 type을 가지고 있음
{type: 'INCREMENT'}

4. 리듀서를 통해 상태 변화시키기

  • 리듀서 : 액션 객체를 받으면 액션 타입에 따라 어떻게 상태를 업데이트 해야할 지 정의하는 업데이트 로직
  • 리듀서 함수의 파라미터 : state, action 객체
  • 새로운 객체를 반환

5. 상태가 변화가 생기면 구독하고 있는 컴포넌트에게 알림

  • 컴포넌트가 스토어 구독할 때 전달한 listener() 호출되고, 이를 통해 새로운 상태를 받고 리렌더링함.
profile
hello world!

0개의 댓글