1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
/** * Compose multiple reducers into one * @param {Function} reducers * @return {Function} */ function composeReducer(...reducers) { return (state, action) => { return reducers.reduce( (newState, reducer) => reducer(newState, action), state ); }; } module.exports = composeReducer;