1.0.0 • Published 1 year ago

ngrx-rehydrate v1.0.0

Weekly downloads
-
License
MIT
Repository
github
Last release
1 year ago

ngrx-rehydrate

Persists parts of the state to localStorage and automatically load them as initial state after refresh/revisit of the page.

Usage

export const exampleReducer = createRehydrateReducer(
    { key: 'key1' },
    INITIAL_STATE,
    on(setAction, (state, { flag }) => ({ ...state, flag })),
);
function createRehydrateReducer<S, A extends Action = Action, R extends ActionReducer<S, A> = ActionReducer<S, A>>(
    config: RehydrateRecucerConfig,
    initialState: S,
    ...ons: ReducerTypes<S, ActionCreator[]>[]
): R 

where

ParamDescription
configRehydrateRecucerConfig object for rehydration options
initialStatesame as with the default createReducer function
onssame as with the default createReducer function

Refs

For more usage examples see the tests https://github.com/amdor/ngrx-rehydrate/blob/main/test/create-rehydrate-reducer.spec.ts

More on rehydration: https://medium.com/betsson-group/the-easiest-way-to-keep-ngrx-state-after-refresh-rehydrate-it-from-localstorage-8cd23b547aac

Types

RehydrateRecucerConfig

PropertyDescription
keythe key to store the substate by. must be unique otherwise 2 state slices would try saving to the same localStorage key