States and Lifecycles in React JS
Published by
sanya sanya
The components have a lifecycle consisting of different phases
or stages
. These phases allow you to perform specific actions at different points in a component's existence, such as initializing state, rendering content, and cleaning up resources.
Additionally, components can have their own state, which is an object that stores data specific to that component.
The React
component lifecycle can be divided into three main phases - mounting, updating, and unmounting and all are mentioned below in the descriptive manner.
Mounting Phase
- Constructor - The constructor function is called when a component is being initialized. It is used for setting up the initial state and binding event handlers.
- Render - The render method is responsible for returning the JSX that represents the component's structure.
- componentDidMount - This method is invoked immediately after the component is mounted to the DOM. It is commonly used for performing side effects like fetching data from an API or setting up subscriptions.

Updating Phase
- componentDidUpdate - This method is called immediately after an update occurs, either due to changes in props or state. It is useful for performing additional logic or side effects based on the updated data.
- shouldComponentUpdate - This method allows you to control whether a component should re-render or not. By default, it returns true, but you can implement custom logic to optimize rendering by comparing current and next props or state.
- render - If the component decides to update, the render method is called again to generate the updated JSX.
Unmounting Phase
- componentWillUnmount - This method is invoked just before a component is unmounted and removed from the DOM. It is typically used for cleaning up resources like event listeners or canceling pending requests.
In addition to the lifecycle methods, React provides a feature called "state" that allows you to manage and update data within a component. State is typically initialized in the constructor using this.state = { /* initial state */ }.
To update the state and trigger re-rendering, we use the setState method provided by React. It is important to note that we should not directly modify the state object; instead, we should use setState to ensure proper handling of state updates.
React's state and lifecycle methods provide a powerful way to manage and manipulate data within components throughout their lifespan. They enable us to create dynamic and interactive UIs by controlling when and how components update based on changes in state or props.
Library
WEB DEVELOPMENT
Basic
Frontend
Express JS
React
Hello World in ReactJS
Rendering Elements
States and Lifecycles in React JS
Handling Events in React JS
Introduction to JSX
Components and Props in React JS
Conditional Rendering
Lists and Keys in React JS
Introduction to Redux
Types of components (class vs functional)
Using the useEffect hook
Building custom hooks in React JS
Context API in React JS
Forms in React JS
Lifting State Up in React JS
Composition vs Inheritance
Prop drilling in React JS
Introduction to Hooks
Using the useState hook
UseMemo vs useCallback
Backend
Interview Questions
FAANG QUESTIONS
On this page
Mounting Phase
Updating Phase
Unmounting Phase