상세 컨텐츠

본문 제목

Redux :: 리덕스와 미들웨어

이론공부

by 비오스터딩 2020. 12. 11. 21:10

본문

Store은 state를 저장하는 객체이다. Redux에는 하나의 상태저장소가 있고, 여기서 대부분의 state를 관리한다.

 

Store의 state는 Reducer를 통해서만 변경이 가능하다. Reducer는 그 이전상태값과 action을 인자로 가지며, 이 두가지를 받아와 새로운 state를 반환한다.

 

reducer에 action을 전달해주는 역할은 하는 것이 dispatch이다. dispatch(action)을 할 경우, action의 type에 맞는 데이터를 받아와 state를 return해준다. action은 객체로서, 반드시 type을 가지며, 동적으로 payload를 가질 수 있다.

 

 

Redux의 장점 중 하나는 상태 변화를 예측가능하고 투명하게 만든다는 점이다. 액션이 보내질때마다 새 상태가 계산되고 저장된다. 상태는 스스로 변할 수 없으며 특정 액션의 결과로만 변경된다. 그러므로 Reducer에서 반환하는 state값은 불변성을 유지해야한다. 즉 이전 state를 push등을 사용하여 직접 수정할 수 없다. 반드시 그 전 state와 다른 객체로 반환되어야한다. 이것이 return {...state}와 같은 spread 방법을 사용하는 이유중 하나이다.

 

 

반응형

관련글 더보기

댓글 영역