//스토어 만들기 위해
import { configureStore } from '@reduxjs/toolkit';
// 데이터를 저장할 리듀서를 가져옴
import rootReducer from './reducer';
//스토어의 상태를 저장,복원하기 위한 라이브러리
import { persistStore, persistReducer } from 'redux-persist';
//세션과 스토리지 둘중 스토리지 선택
import storage from 'redux-persist/lib/storage';
const persistConfig = {
key:'root',//저장할 데이터 key
storage, //사용할 엔진
}
//Redux Store와 redux-persist를 연동
const persistedReducer = persistReducer(persistConfig, rootReducer);
// Redux 스토어를 생성
// 리듀서는 원래의 루트 리듀서에 Redux Persist의 지속성 관련 로직을 추가
const store = configureStore({
reducer:persistedReducer,
middleware: (getDefaultMiddleware) => {
const defaultMiddleware = getDefaultMiddleware();
return [...defaultMiddleware];
});
//다른 파일에서 가져와 사용할 수 있다
export const persistor = persistStore(store);
export default store;
Redux Store와 redux-persist를 연동(사용 하기위해 라이브러리 연동)
export const persistor = persistStore(store);
middleware: (getDefaultMiddleware)=>{}