combineReducers(reducers)
Redoodle packages a version of combineReducers that isn't opinionated about initial undefined state handling.
Note: Redoodle's Reducer semantics differ very slightly from Redux's
in regards to initial State handling. In short, Redoodle Reducer's actually
aren't expected to respond to undefined, although this can cause initial
integration problems to an existing Redux application. For more,
please check out the Initial State Management section.
Example
import { combineReducers } from "redoodle";
import { playlistsReducer, PlaylistsState } from "./reducers/playlists";
import { preferencesReducer, PreferencesState } from "./reducers/preferences";
export interface AppState {
playlists: PlaylistsState;
preferences: PreferencesState;
}
export const reducer = combineReducers<AppState>({
playlists: playlistsReducer,
preferences: preferencesReducer,
});
TypeScript definition
function combineReducers<S>(reducerMap: ReducerMap<S>): Reducer<S>
interface ReducerMap<S> {
[key in keyof S]: Reducer<S[key]>;
};