Creating Custom Hooks

Custom hooks allow you to extract and reuse stateful logic across components.

import { useState, useEffect } from 'react';

function useWindowWidth() {
  const [width, setWidth] = useState(window.innerWidth);

  useEffect(() => {
    const handleResize = () => setWidth(window.innerWidth);
    window.addEventListener('resize', handleResize);
    return () => window.removeEventListener('resize', handleResize);
  }, []);

  return width;
}

Use custom hooks to improve code modularity and avoid duplication.

← Prev