MCPcopy
hub / github.com/reduxjs/redux / createPersistEnhancer

Function createPersistEnhancer

test/typescript/enhancers.ts:298–318  ·  view source on GitHub ↗
(
    persistConfig: any
  )

Source from the content-addressed store, hash-verified

296 }
297
298 function createPersistEnhancer(
299 persistConfig: any
300 ): StoreEnhancer<{}, ExtraState> {
301 return createStore =>
302 <S, A extends Action, PreloadedState>(
303 reducer: Reducer<S, A, PreloadedState>,
304 preloadedState?: PreloadedState | undefined
305 ) => {
306 const persistedReducer = persistReducer(persistConfig, reducer)
307 const store = createStore(persistedReducer, preloadedState)
308 const persistor = persistStore(store)
309
310 return {
311 ...store,
312 replaceReducer: (nextReducer: Reducer<S, A>) => {
313 store.replaceReducer(persistReducer(persistConfig, nextReducer))
314 },
315 persistor
316 }
317 }
318 }
319
320 interface PartialState {
321 someField?: 'string'

Callers 1

finalHelmersonExampleFunction · 0.85

Calls 4

persistReducerFunction · 0.85
createStoreFunction · 0.85
persistStoreFunction · 0.85
replaceReducerMethod · 0.80

Tested by

no test coverage detected