@ryo-98/react-api-bridge
Version:
A registry for component imperative api
18 lines (17 loc) • 427 B
JavaScript
import { useEffect, useRef } from "react";
import { removeArrayElement } from "./removeArrayElement.js";
function useUniqueElementRef(entity) {
const elRef = useRef(null);
useEffect(() => {
if (Array.isArray(entity)) {
entity.push(elRef);
}
return () => {
removeArrayElement(entity, elRef);
};
}, [entity]);
return Array.isArray(entity) ? elRef : entity;
}
export {
useUniqueElementRef
};