The course is part of this learning path
This module looks at how to manage state in React. You’ll be looking at state management, context, and reducers.
The objectives of this module are to provide you with an understanding of:
- State Management
- How to create and provide context
- How to provide dispatch
This learning path is aimed at all who wish to learn how to use the ReactJS framework.
We welcome all feedback and suggestions - please contact us at email@example.com to let us know what you think.
- [Narrator] There's a time, you'll hopefully create your own library throughout components that can be used across a number of different applications. As these applications become more complex, identifying what state you should live can become a difficult job. You must flee complex hierarchical component trees that may have many branches that are many levels deep. Sharing a single source of truth across the branches by passing props for the tree can add a lot of additional code and make the components less easy to understand. The React community has been well aware of this issue and different methodologies to abstract state management have been introduced to work with state and complex component trees. In this section, we'll examine what context is and how the useContext hook can be utilized to help simplify these data drill downs. We'll also examine reducers and how the useReducer hook is leverage to enable components to dispatch actions and payloads to keep state updated. You may have heard of redox as a state management tool commonly used with React, and that's one way to do it. But the one with hooks has introduced much of the functionality into React and that's great news. So we won't be looking into redox here.
Context - How to Create and Provide Context - Consume Context - Reducers - Actions in Reducers - The useReducer Hook - Providing Dispatch
Ed is an Outstanding Trainer in Software Development, with a passion for technology and its uses and holding more than 10 years’ experience.
Ed is responsible for delivering QA’s Programming Foundations course using the Eclipse IDE. His skillset extends into the DevOps sphere, where he is able to deliver courses based around Agile/Scrum practices, version control, and CI/CD.