UNPKG

@ozen-ui/kit

Version:

React component library

21 lines (20 loc) 713 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.useMultiRef = useMultiRef; var react_1 = require("react"); var setRef_1 = require("../../utils/setRef"); /** Создает несколько ссылок (ref) на один DOM-элемент. */ function useMultiRef(refs) { // Мемоизирует массив ref'ов var arrRefs = (0, react_1.useRef)(refs); return (0, react_1.useMemo)(function () { if (!arrRefs.current.length) { return null; } return function (node) { arrRefs.current.forEach(function (ref) { (0, setRef_1.setRef)(ref, node); }); }; }, [arrRefs]); }