UNPKG

@clayui/shared

Version:
23 lines (22 loc) 594 B
import { useCallback, useEffect, useState } from "react"; function useObservedMaxWidth(ref) { const [maxWidth, setMaxWidth] = useState(window.innerWidth / 2); const handleResize = useCallback(() => { if (ref.current) { setMaxWidth( parseFloat(window.getComputedStyle(ref.current).maxWidth) ); } }, [ref]); useEffect(() => { handleResize(); window.addEventListener("resize", handleResize); return () => { window.removeEventListener("resize", handleResize); }; }, [handleResize]); return maxWidth; } export { useObservedMaxWidth };