더북(TheBook)

7.7 useReducer Hook 함수 사용하기

useReducer 함수는 상태를 관리할 때 사용할 수 있는 또 다른 Hook 함수입니다. 이 함수를 사용할 때는 다음과 같은 개념이 사용됩니다.

state: 상태

action: 변화를 정의하는 객체

reducer: stateaction을 파라미터로 받아와서 그다음 상태를 반환하는 함수

dispatch: action을 발생시키는 함수

이 Hook은 이번 예제와 같이 useState를 여러 번 사용하는 상황에서 사용하면 유용할 수 있습니다. 유용할 수도 있다는 건 무조건 이 Hook을 사용할 필요는 없다는 뜻입니다. 상황에 따라 useState로만 구현하는 게 편할 때도 있고, useReducer를 사용하는 게 편할 때도 있습니다.

WriteHeader의 경우도 꼭 useReducer를 사용할 필요는 없습니다. 하지만 useReducer를 사용해보기에 적합한 상황이기도 해서 공부 삼아 사용법을 한번 알아보겠습니다.

onPressDate 함수를 보면 setModesetVisible을 호출하고 있는데요.

const onPressDate = () => {
  setMode('date');
  setVisible(true);
};
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.