1234567891011121314151617181920212223242526272829303132 |
- "use strict";
-
- exports.__esModule = true;
- exports.default = useCallbackRef;
-
- var _react = require("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} />
- * ```
- */
- function useCallbackRef() {
- return (0, _react.useState)(null);
- }
|