React useEffect Lifecycle Explained: Mount, Update, Unmount

🚀 React useEffect Lifecycle Made Simple – Mount, Update & Unmount 🧩 Example: User Profile Component import React, { useState, useEffect } from "react"; function UserProfile() { const [userId, setUserId] = useState(1); const [userName, setUserName] = useState(""); useEffect(() => { console.log("Component Mounted or userId changed"); // Simulate fetching user data const fakeFetch = setTimeout(() => { setUserName("User " + userId); console.log("Fetched data for user", userId); }, 500); // Cleanup on unmount or before next effect return () => { clearTimeout(fakeFetch); console.log("Cleanup: Component Unmounted or userId changed"); }; }, [userId]); return ( <div style={{ border: "1px solid #ccc", padding: "1rem", margin: "1rem" }}> <h2>User Profile</h2> <p>User ID: {userId}</p> <p>User Name: {userName}</p> <button onClick={() => setUserId(userId + 1)}>Next User</button> </div> ); } export default UserProfile; 🔹What Happens Step by Step: Mount: - Component appears on screen - useEffect runs → fetches user 1 → updates name - Console: "Component Mounted or userId changed" Update: - Click button → userId changes → component re-renders - useEffect cleanup runs first → old fetch canceled - New fetch runs → updates UI - Console: "Cleanup: Component Unmounted or userId changed" → " Component Mounted or userId changed " Unmount: - Component removed from screen - Cleanup stops any ongoing fetch/timer → prevents memory leaks - Console: "Cleanup: Component Unmounted or userId changed" #ReactJS #JavaScript #Frontend #WebDevelopment #CleanCode #LearningInPublic #Programming

  • graphical user interface, application, website

To view or add a comment, sign in

Explore content categories