
Security News
MCP Community Begins Work on Official MCP Metaregistry
The MCP community is launching an official registry to standardize AI tool discovery and let agents dynamically find and install MCP servers.
nested-combine-reducers
Advanced tools
Allows you to create your root reducer in one go, instead of individually combine slice reducers
Allows you to create your root reducer in one go, instead of individually combine slice reducers.
Tipically you divide your state tree in multiple slices, each handled by its own reducer.
For example:
const reducers = {
ui: uiReducer,
data: dataReducer
};
But if you want to further split your slices in even more slices you would have to do:
const postsReducer = combineReducers({
items: itemsReducer,
favourites: favouritePostsReducer
});
const commentsReducer = ...;
const dataReducer = combineReducers({
posts: postsReducer,
comments: commentsReducer
});
const rootReducer = combineReducers({
data: dataReducer,
});
As you can see you have to call combineReducers
multiple times, potentially losing the overview of your state shape.
In fact, from the example above, it is not immediately clear what the state shape looks like.
This library tries to simplify the creation process of the root reducer by allowing to use a reducers map with nested reducing functions.
The example above using nestedCombineReducers
would become:
const rootReducer = nestedCombineReducers({
data: {
posts: {
items: itemsReducer,
favourites: favouritePostsReducer
},
comments: ...
}
});
Thanks to nestedCombineReducers
it is immediately clear what the state shape looks like when your are creating your root reducer.
You can also use nestedCombineReducers
to create just a slice and then create the rest of your root reducer with combineReducer
.
Simply pass your reducers map object to nestedCombineReducers
to get back your root reducer, like so:
const rootReducer = nestedCombineReducers({
data: {
posts: {
items: itemsReducer,
favourites: favouritePostsReducer
},
comments: ...
}
});
const { nestedCombineReducers } = require('nested-combine-reducers/cjs');
Note: Import from /cjs folder !
import { nestedCombineReducers } from 'nested-combine-reducers'
Note: This library requires at least Redux 4.
You can get nestedCombineReducers
from NPM by running npm install nested-combine-reducers
.
The NPM package is hybrid, that means that you get both the ES Modules and the CommonJS version.
nestedCombineReducers
is written in TypeScript and typings are provided with the package.
Frankly, I'm not a fan of having small utility functions installed as a dependency, therefore I suggest to simply copy/paste the function.
FAQs
Allows you to create your root reducer in one go, instead of individually combine slice reducers
The npm package nested-combine-reducers receives a total of 639 weekly downloads. As such, nested-combine-reducers popularity was classified as not popular.
We found that nested-combine-reducers demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
The MCP community is launching an official registry to standardize AI tool discovery and let agents dynamically find and install MCP servers.
Research
Security News
Socket uncovers an npm Trojan stealing crypto wallets and BullX credentials via obfuscated code and Telegram exfiltration.
Research
Security News
Malicious npm packages posing as developer tools target macOS Cursor IDE users, stealing credentials and modifying files to gain persistent backdoor access.