UNPKG

@restart/hooks

Version:

A set of utility and general-purpose React hooks.

29 lines (28 loc) 754 B
/** * A convenience hook around `useState` designed to be paired with * the component [callback ref](https://reactjs.org/docs/refs-and-the-dom.html#callback-refs) api. * Callback refs are useful over `useRef()` when you need to respond to the ref being set * instead of lazily accessing it in an effect. * * ```ts * const [element, attachRef] = useCallbackRef<HTMLDivElement>() * * useEffect(() => { * if (!element) return * * const calendar = new FullCalendar.Calendar(element) * * return () => { * calendar.destroy() * } * }, [element]) * * return <div ref={attachRef} /> * ``` * * @category refs */ export default function useCallbackRef<TValue = unknown>(): [ TValue | null, (ref: TValue | null) => void ];