본문 바로가기

React.js

Redux 알아 보기

액션 (Action)

  • 리덕스의 상태 값을 수정하는 유일한 방법: 액션 객체와 함께 dispatch 메서드 호출
  • 타입 속성값을 가진 자바스크립트 객체 (* type 속성 값이 꼭 존재해야 함)
  • type 속성값으로 액션 객체 구분, type 속성값을 제외한 나머지는 상태 값을 수정하기 위해 사용되는 정보
  • 액션 객체에는 type 속성 값 외에도 원하는 속성 값을 넣을 수 있음
  • dispatch 메서드가 호출된 순서대로 리덕스 내부에서 상태 값 변경


리듀서 (Reducer)

  • 액션이 발생했을 때 상태 값을 변경하는 함수
  • useReducer를 작성할 때와 똑같은 형태를 가지고 있음
  • Action(액션)에서 발생하는 dispatch() 메소드를 사용하여 reducer 호출
  • (state, action) => nextState, 이전 상태 값과 액션 객체를 입력으로 받아서 새로운 상태 값을 만드는 순수 함수
  • 순수함수이므로 side effect를 발생시키면 안 됨
  • 상태값은 불변 객체로 관리해야 하므로 수정할 때마다 새로운 객체를 생성
  • 스토어 생성 시, 상태 값이 없는 상태로 리듀서를 호출하므로, 매개변수의 기본값을 사용해서 초기 상태 값 정의


스토어 (Store)

  • 상태가 관리되는 오직 하나의 공간
  • 리덕스의 상태 값을 가지는 객체
  • 액션이 발생(dispatch 메소드로 시작)하면, 리듀서를 실행하여 상태 값을 새로운 값으로 변경
  • 사전에 등록된 모든 이벤트 처리 함수에게 액션의 처리가 끝났음을 알림


Store 내장 함수

  • Dispatch : dispatch(action), reducer를 불러서 현재 state에 action을 발생시킴
  • Subscribe : subscribe(function(){}), dispatch가 실행될 때마다 subscribe에 전달한 함수가 호출됨

'React.js' 카테고리의 다른 글

리덕스의 세 가지 원칙  (0) 2022.07.26
Hook이란?  (0) 2022.07.26
리액트 컴포넌트의 Life Cycle  (0) 2022.07.26
React.js 컴포넌트 선언 방식  (0) 2022.07.26
React.js 특징  (0) 2022.07.26