123456789101112131415161718192021222324252627 |
- import { useState } from 'react';
- /**
- * 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} />
- * ```
- */
-
- export default function useCallbackRef() {
- return useState(null);
- }
|