api.js

export const requestAlarmsRead = (data = {}) => {
  const queryData = queryInfoData['alarmsRead']
  const info = queryFilter({ queryData, originDataInfo: data })
  const urlData = queryFilter({ queryData, queryType: 'urlQuery', originDataInfo: data })
  return axios[queryData.method](queryData.replaceAPI({ ...urlData }), info)
}

index.js

- 모든 js 파일을 export

export * from './api'
export { default as queryInfoData } from './queryInfoData'
export * from './reducer'
export * from './saga'

queryInfoData.js

/**
   * * alarm 등록 POST
   * * alarm/?category={categoryId}&url={urlId} (all Required)
   * * JWT 필요
   */
  alarmCreate: {
    API: 'alarm/?category={categoryId}&url={urlId}',
    method: 'post',
    bodyQuery: {
      name: '',
      reserved_time: {
        year: '',
        month: '',
        day: '',
        hour: '',
        minute: '',
      },
    },
    urlQuery: {
      categoryId: '',
      urlId: '',
    },
    replaceAPI({ categoryId, urlId }) {
      if (!categoryId || !urlId) return
      return this.API.replace('{categoryId}', categoryId).replace('{urlId}', urlId)
    },
  },

reducer.js