더북(TheBook)

24.2.3.5 auth 리덕스 모듈에서 API 사용하기

그럼 방금 만든 유틸 함수를 사용하여 auth 리덕스 모듈에서 API를 사용할 수 있도록 구현하겠습니다.

우선 다음과 같이 여섯 가지 액션 타입을 추가로 더 선언해야 합니다.

modules/auth.js

import { createAction, handleActions } from 'redux-actions';
import produce from 'immer';

const CHANGE_FIELD = 'auth/CHANGE_FIELD';
const INITIALIZE_FORM = 'auth/INITIALIZE_FORM';

const REGISTER = 'auth/REGISTER';
const REGISTER_SUCCESS = 'auth/REGISTER_SUCCESS';
const REGISTER_FAILURE = 'auth/REGISTER_FAILURE';

const LOGIN = 'auth/LOGIN';
const LOGIN_SUCCESS = 'auth/LOGIN_SUCCESS';
const LOGIN_FAILURE = 'auth/LOGIN_FAILURE';
(...)

 

각 요청마다 액션 타입을 세 개 선언해야 하는데, 같은 작업이 조금 반복됩니다. 코드를 반복해서 작성하는 것이 사람에 따라 조금 귀찮을 수도 있겠지요? 이와 같은 경우 액션 타입을 한꺼번에 만드는 함수를 선언하는 방법도 있습니다. 위 코드를 한번 리팩토링해 봅시다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.