UNPKG

reactuals

Version:

A useful package providing a collection of 50+ React hooks and utilities to simplify React development.

20 lines (19 loc) 573 B
import { useEffect } from "react"; /** * Detects when the user's mouse leaves the page (e.g. for exit intent). * * @param onExit - Callback when page is left * * Example: * usePageLeave(() => console.log("User is leaving!")); */ export function usePageExit(onExit) { useEffect(() => { const handleMouseLeave = (e) => { if (e.clientY <= 0) onExit(); }; document.addEventListener("mouseout", handleMouseLeave); return () => document.removeEventListener("mouseout", handleMouseLeave); }, [onExit]); }