Files
SnowLuma/.pnpm-store/v11/files/8b/3c7ac25d9dacc4c6dd5a8cc4a31058e53524c16b4b3028d246e894b70a8dd1c59b99bc8629f28da44eb20d7752424da18cf99a8a40cfe6cc122a2ccbc64d7a
T
TanTan 2a69b23b47
Dev Build / cleanup (push) Waiting to run
Dev Build / typecheck (push) Waiting to run
docs: 仓库链接指向本镜像仓库
2026-11-13 09:27:07 +08:00

19 lines
699 B
Plaintext

import { assignRef } from './assignRef';
import { createCallbackRef } from './createRef';
/**
* Merges two or more refs together providing a single interface to set their value
* @param {RefObject|Ref} refs
* @returns {MutableRefObject} - a new ref, which translates all changes to {refs}
*
* @see {@link useMergeRefs} to be used in ReactComponents
* @example
* const Component = React.forwardRef((props, ref) => {
* const ownRef = useRef();
* const domRef = mergeRefs([ref, ownRef]); // 👈 merge together
* return <div ref={domRef}>...</div>
* }
*/
export function mergeRefs(refs) {
return createCallbackRef((newValue) => refs.forEach((ref) => assignRef(ref, newValue)));
}