React Redux 7.1+ requires React 16.8.3 or later, in order to make use of React Hooks.
The recommended way to start new apps with React and Redux is by using the official Redux+JS template or Redux+TS template for Create React App, which takes advantage of Redux Toolkit and React Redux's integration with React components.
To use React Redux with your React app, install it as a dependency:
If you are using TypeScript, the React Redux types are maintained separately in DefinitelyTyped, but included as a dependency of the
react-redux package, so they should be installed automatically. If you still need to install them manually, run:
React Redux includes a
<Provider /> component, which makes the Redux store available to the rest of your app:
React Redux provides a pair of custom React hooks that allow your React components to interact with the Redux store.
useSelector reads a value from the store state and subscribes to updates, while
useDispatch returns the store's
dispatch method to let you dispatch actions.
Redux maintainer Mark Erikson appeared on the "Learn with Jason" show to explain how we recommend using Redux today. The show includes a live-coded example app that shows how to use Redux Toolkit and React-Redux hooks with Typescript, as well as the new RTK Query data fetching APIs.
See the "Learn Modern Redux" show notes page for a transcript and links to the example app source.
The #redux channel of the Reactiflux Discord community is our official resource for all questions related to learning and using Redux. Reactiflux is a great place to hang out, ask questions, and learn - come join us!