Yes, functional components in React have lifecycle behavior, but instead of traditional lifecycle methods (like in class components), they use hooks like useEffect().
🔹 Class vs Functional Lifecycle (Comparison)
| Class Component Method | Functional Equivalent |
|---|---|
componentDidMount() |
useEffect(() => {}, []) |
componentDidUpdate() |
useEffect(() => {}, [deps]) |
componentWillUnmount() |
useEffect(() => return () => {}, []) |
✅ Example: Lifecycle in Functional Component
import React, { useEffect } from 'react';
function MyComponent() {
useEffect(() => {
console.log('🟢 Component mounted');
return () => {
console.log('🔴 Component will unmount');
};
}, []);
return <h2>Hello from Functional Component</h2>;
}
📝 In Summary:
- Yes, functional components can mimic lifecycle methods using
useEffect()and other React hooks. - They provide cleaner and more flexible ways to handle side effects, updates, and unmounting.