We'll use useCallback to :
- Passing a function as prop to React.memo child
- Prevents unnecessary re-renders
- Setting up event handlers inside components
- Prevents recreation of handler functions
- Functions inside useEffect/useMemo that need stable reference
- Avoids infinite loops or unnecessary logic execution
Example :
import React, { useCallback, useState } from 'react';import './App.css';import Dashboard from './component/Dashboard';
const Child = React.memo(({ onClick }) => {  console.log('Child rendered');  return <button onClick={onClick}>Click Me</button>;});
function App() {  const [count, setCount] = useState(0);
  const handleClick = useCallback(() => {    console.log('Clicked');  }, []);
  return (    <div className="App">      <Dashboard />      <h2>React useCallback Example</h2>      <p>Count: {count}</p>      <button onClick={() => setCount(count + 1)}>Increment</button>      <Child onClick={handleClick} />    </div>  );}
export default App;
import React, { useCallback, useState } from 'react';
import './App.css';
import Dashboard from './component/Dashboard';
const Child = React.memo(({ onClick }) => {
  console.log('Child rendered');
  return <button onClick={onClick}>Click Me</button>;
});
function App() {
  const [count, setCount] = useState(0);
  const handleClick = useCallback(() => {
    console.log('Clicked');
  }, []);
  return (
    <div className="App">
      <Dashboard />
      <h2>React useCallback Example</h2>
      <p>Count: {count}</p>
      <button onClick={() => setCount(count + 1)}>Increment</button>
      <Child onClick={handleClick} />
    </div>
  );
}
export default App;
 
 
 
 
 
 
 Posts
Posts
 
 
 
 
 
