Browse Source

[redux-toolkit] store 정리

master
junh_eee(이준희) 7 months ago
parent
commit
0f00b83437
  1. 40
      src/_redux/rootReducer.ts
  2. 45
      src/redux/reducers/rootReducer.ts
  3. 31
      src/redux/storeConfig/store.ts

40
src/_redux/rootReducer.ts

@ -23,27 +23,37 @@ import { controlGpCountReducer } from './features/control/gp/gpSlice';
const rootReducer = (state: any, action: any) => {
const combineReducer = combineReducers({
layout: layoutReducer,
dashboard: dashboardReducer,
drone: droneReducer,
laanc: laancReducer,
history: historyReducer,
faq: faqReducer,
qna: qnaReducer,
simulation: simulationReducer,
register: registerReducer,
statistics: statisticsReducer,
message: messageReducer,
group: groupReducer,
find: findReducer,
// common
layoutState: layoutReducer,
messageState: messageReducer,
// account
auth: authReducer,
map: mapReducer,
find: findReducer,
register: registerReducer,
// analysis
historyState: historyReducer,
simulationState: simulationReducer,
// basis
droneState: droneReducer,
groupState: groupReducer,
// control gp
controlGpState: controlGpReducer,
controlGpHisState: controlGpHisReducer,
controlGpLogState: controlGpLogReducer,
controlGpDtlState: controlGpDtlReducer,
controlGpFltPlanState: controlGpFltPlanReducer,
controlGpCountState: controlGpCountReducer
controlGpCountState: controlGpCountReducer,
// control map
map: mapReducer,
// customerService
faqState: faqReducer,
qnaState: qnaReducer,
// dashboard
dashboardState: dashboardReducer,
// laanc
laancState: laancReducer,
// statistics
statisticsState: statisticsReducer
});
return combineReducer(state, action);
};

45
src/redux/reducers/rootReducer.ts

@ -1,27 +1,5 @@
// ** Redux Imports
import { combineReducers } from 'redux';
import { all, fork } from 'redux-saga/effects';
// ** Reducers, Sagas Imports
// import { findSaga, findReducer } from '../../modules/account/find';
// import {
// authSaga,
// authReducer,
// userPageReducer
// } from '../../modules/account/auth';
// import { accountSaga, accountReducer } from '../../modules/account/register';
// import {
// analysisHistorySaga,
// historyReducer
// } from '../../modules/analysis/history';
// import {
// analysisSimulatorSaga,
// analysisSimulatorReducer
// } from '../../modules/analysis/simulation';
// import { droneSaga, droneReducer } from '../../modules/basis/drone';
// import { basGroupSaga, groupReducer } from '../../modules/basis/group';
// import { laancSaga, laancReducer } from '../../modules/laanc';
// Redux-toolkit Reducer
import { droneReducer } from '@src/_redux/features/basis/drone/droneSlice';
@ -44,25 +22,14 @@ import {
controlGpHisReducer,
controlGpReducer,
controlGpFltPlanReducer,
// controlGpSaga,
controlGpLogReducer,
controlGpCountReducer
} from '@src/_redux/features/control/gp/gpSlice';
export function* saga() {
// yield all([fork(controlGpSaga)]);
// yield all([fork(analysisHistorySaga)]);
// yield all([fork(accountSaga)]);
// yield all([fork(authSaga)]);
// yield all([fork(basGroupSaga)]);
// yield all([fork(droneSaga)]);
// yield all([fork(analysisSimulatorSaga)]);
// yield all([fork(findSaga)]);
// yield all([fork(laancSaga)]);
// yield all([fork(statisticsSaga)]);
}
const rootReducer = combineReducers({
layoutState: layoutReducer,
messageState: messageReducer,
controlGpState: controlGpReducer,
controlGpHisState: controlGpHisReducer,
controlGpLogState: controlGpLogReducer,
@ -73,16 +40,10 @@ const rootReducer = combineReducers({
laancState: laancReducer,
analysisHistoryState: historyReducer,
analysisSimulatorState: simulationReducer,
// authState: authReducer,
// userPageState: userPageReducer,
// ------------------------------------------------
statisticsState: statisticsReducer,
dashboardState: dashboardReducer,
droneState: droneReducer,
layoutState: layoutReducer,
faqState: faqReducer,
messageState: messageReducer,
groupState: groupReducer,
registerState: registerReducer,
findState: findReducer,

31
src/redux/storeConfig/store.ts

@ -1,39 +1,13 @@
// ** Redux, Thunk & Root Reducer Imports
import thunk from 'redux-thunk';
import createDebounce from 'redux-debounced';
import rootReducer, { saga } from '../reducers/rootReducer';
import { createStore, applyMiddleware, compose } from 'redux';
import createSagaMiddleware from 'redux-saga';
import {
TypedUseSelectorHook,
useSelector as useSelectors,
useDispatch as useDispatchs
} from 'react-redux';
import rootReducer from '../reducers/rootReducer';
import { configureStore } from '@reduxjs/toolkit';
// // ** init middleware
// export const sagaMiddleware = createSagaMiddleware();
// const middlewares = [sagaMiddleware, createDebounce(), thunk];
// // ** Dev Tools
// declare global {
// interface Window {
// __REDUX_DEVTOOLS_EXTENSION_COMPOSE__?: typeof compose;
// }
// }
// const composeEnhancers = window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ || compose;
// // ** Create store
// const store = createStore(
// rootReducer,
// {},
// composeEnhancers(applyMiddleware(...middlewares))
// );
// sagaMiddleware.run(saga);
const store = configureStore({
export const store = configureStore({
reducer: rootReducer,
middleware: getDefaultMiddleware =>
getDefaultMiddleware({
@ -47,4 +21,3 @@ export const useSelector: TypedUseSelectorHook<RootState> = useSelectors;
type AppDispatch = typeof store.dispatch;
export const useDispatch = () => useDispatchs<AppDispatch>();
export { store };

Loading…
Cancel
Save