redux
↔ (Design Pattern) to colocate state in global external central store, to control data flow with predictable scalable pattern of Dispatch > Reducer > Store
Sources: www.npmjs.com/package/redux redux.js.org/
aka Redux-Pattern
redux
still king of state management libraries at 8.8M weekly downloads December 12th, 2022
OLD Redux API
named import or use Redux._reduxMethod
@reduxjs/toolkit
Official Opinionated redux
Toolset Lib with simplified improved syntax
react-redux
sub-library with React Binding for redux
redux-thunk
redux
sub-library to Thunk Redux Middleware for redux
for logic to interact with Dispatch & getState()
- to delay dispatch for action until condition met . extends redux actions to return functions that can be executed by thunk middleware, allows side-effects such as async api calls.
Sources: www.npmjs.com/package/redux stackoverflow.com/questions/35411423/how
Redux DevTools
Browser Extension to inspect/debug redux
with Time-Travel
References
redux-thunk
↔redux
sub-library to Thunk Redux Middleware forredux
for logic to interact with Dispatch &getState()
- to delay dispatch for action until condition met . extends redux actions to return functions that can be executed by thunk middleware, allows side-effects such as async api calls.Predictable
↔redux
helps scale Apps with consistent behaviour by restict data flow into a predictable pattern of dispatch>reducer>stateCentralized
↔redux
manages App state from single global locationRedux DevTools
↔ Browser Extension to inspect/debugredux
with Time-TravelRoot Reducer
↔redux
fn to compute new state from old state & Action dataStandalone
↔redux
lib has no Depsreact-redux
↔ sub-library with React Binding forredux
@reduxjs/toolkit
↔ Official Opinionatedredux
Toolset Lib with simplified improved syntaxuseReducer()
↔ Stateful Hook with logic to update new state from current state & payload via Redux PatternTime-Travel
↔ (feat) to revisitredux
state historyRedux Store
↔ central global container to manage App state forredux