import { createAsyncThunk, createSlice } from "@reduxjs/toolkit"; import { URLS } from "../../api/apiConfig"; import { TAxios } from "../../api/TAxios"; // 약관 정보 조회 IF-LGSP-005 export const getHomeTerms = createAsyncThunk( "home/getHomeTerms", async (props, thunkAPI) => { const { trmsTpCdList, mbrNo } = props; const onSuccess = (response) => { console.log("getHomeTerms onSuccess ", response.data); thunkAPI.dispatch(homeSlice.actions.updateTermsData(response.data)); }; const onFail = (error) => { console.error("getHomeTerms onFail ", error); }; TAxios( thunkAPI.dispatch, thunkAPI.getState, "get", URLS.GET_HOME_TERMS, { trmsTpCdList, mbrNo }, {}, onSuccess, onFail ); } ); // 메뉴 목록 조회 IF-LGSP-044 export const getHomeMenu = createAsyncThunk( "home/getHomeMenu", async (_, thunkAPI) => { const onSuccess = (response) => { console.log("getHomeMenu onSuccess ", response.data); thunkAPI.dispatch(homeSlice.actions.updateMenuData(response.data)); }; const onFail = (error) => { console.error("getHomeMenu onFail ", error); }; TAxios( thunkAPI.dispatch, thunkAPI.getState, "get", URLS.GET_HOME_MENU, {}, {}, onSuccess, onFail ); } ); const initialState = { termsData: {}, menuData: {}, }; export const homeSlice = createSlice({ name: "home", initialState, reducers: { updateTermsData: (state, action) => { state.termsData = action.payload; }, updateMenuData: (state, action) => { //임시코드 state.menuData = action.payload; }, }, }); export const { updateTermsData, updateMenuData } = homeSlice.actions; export default homeSlice.reducer;