728x90
React에서 컴포넌트의 상태 관리를 위해 기본적으로 가장 많이 쓰이는 hook은 setState() 함수이다.
좀 더 복잡한 상태 관리가 필요한 React 컴포넌트에서는 setReducer() hook 함수를 사용할 수 있다.
Redux 패턴
const [<상태 객체>, <dispatch 함수>] = useReducer(<reducer 함수>, <초기 상태>, <초기 함수>)
reducer 함수는 현재 상태(state) 객체와 행동(action) 객체를 인자로 받아서 새로운 상태(state) 객체를 반환하는 함수다.
dispatch 함수는 컴포넌트 내에서 상태 변경을 일으키기 위해서 사용되는데,
인자로 reducer 함수에 넘길 행동(action) 객체를 받는다.
행동(action) 객체는 관행적으로 어떤 부류의 행동인지를 나타내는 type 속성과 해당 행동과 괸련된 데이터를 담고 있다.
컴포넌트에서 dispatch 함수에 행동(action)을 던지면, reducer 함수가 이 행동(action)에 따라서 상태(state)를 변경해준다.
728x90
'JavaScript > React' 카테고리의 다른 글
[React] useReducer (React Hooks) (0) | 2023.07.24 |
---|---|
[React] Modal창 띄워졌을 때 body 스크롤 안되게 하기 (0) | 2023.06.29 |
[React] useState,Props로 장바구니 기능, 상태관리 (0) | 2023.06.27 |
[React] react-cookie 로 로그아웃 기능 구현하기 (0) | 2023.06.03 |
[React] 리액트 쿼리 React-Query useQuery 적용하기 (0) | 2023.06.02 |
댓글