우선 createRequestSaga.js 파일을 열고 그 내부에 createRequestActionTypes라는 함수를 선언하여 내보내세요.

    lib/createRequestSaga.js

    import { call, put } from 'redux-saga/effects';
    import { startLoading, finishLoading } from '../modules/loading';
    
    export const createRequestActionTypes = type => {
      const SUCCESS = `${type}_SUCCESS`;
      const FAILURE = `${type}_FAILURE`;
      return [type, SUCCESS, FAILURE];
    };
    
    export default function createRequestSaga(type, request) {
      (...)
    }

     

    이 함수를 사용하면 요청에 관련된 액션 타입들을 선언할 때 다음과 같이 작성할 수 있습니다.

    modules/auth.js

    import { createAction, handleActions } from 'redux-actions';
    import produce from 'immer';
    import { createRequestActionTypes } from '../lib/createRequestSaga';
    
    const CHANGE_FIELD = 'auth/CHANGE_FIELD';
    const INITIALIZE_FORM = 'auth/INITIALIZE_FORM';
    
    const [REGISTER, REGISTER_SUCCESS, REGISTER_FAILURE] = createRequestActionTypes(
      'auth/REGISTER',
    );
    
    const [LOGIN, LOGIN_SUCCESS, LOGIN_FAILURE] = createRequestActionTypes(
      'auth/LOGIN',
    );

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