[Redux] Ruducer란 무엇인가

cho yunsu·2021년 9월 13일
0

reducer 는 2개의 인자를 받는데
1. state
2. action (dispatch를 통해 받아옴.)

=> 이전 state와 action을 비교해서 새로운 state를 리턴함..
절대 state를 직접 변경하지 않는다..!!!

** 리듀서가 리턴하는 것은 그 무엇이든 어플리케이션의 상태가 된다!!


원래 서로의 컴포넌트들은 자신의 상태가 변경되었을때, 자신에게 의존하고 있는 다른 컴포넌트들에게 그것을 직접 알려줘야 했다. 하지만 redux를 사용하게 되면 모든 컴포넌트들이 랜더링 될때 필요한 데이터를 담고 있는 state를 만들고(getState()), 만약 action을 전달하여(dispatch()) reducer를 통해 state가 변경되게 되면 모든 컴포넌트들에게 state가 변경되었음을 알리고 state가 변경됨에 따라 subsctibe에 포함되어있는 함수들이 실행되면서(subscribe()) 컴포넌트들이 재랜더링되기 때문에 컴포넌트들간의 의존성이 낮아지고 컴포넌트들은 각자 자신의 상태에만 집중할 수 있게 된다.

profile
Growing Developer!!

0개의 댓글