react hook 为循环出来的多个子组件添加ref

react hook 为循环出来的多个子组件添加ref

在React函数组件中,可以使用useRef钩子来获取当前组件的标签(DOM元素)。

  • 父组件

    const details = useState([{name:'A'},{name:'B'},{name:'C'}])
    const bodyRefs = useRef({});

    // 把ref挂载在循环出来的子组件
    {
    details.map((e) => (
    <childComponents bodyRefs ={bodyRefs} info={info} key={e.name} />
    ))
    }

  • 子组件

    // 拿到父组件给的bodyRefs 把每个子组件塞进去

    bodyRefs.current[info.name] = ele} />

最终获取到的bodyRefs

复制代码
console.log(bodyRefs.current)

{
	A: ...对应绑定DOM元素,
	B: ...对应绑定的DOM元素,
	C: ...对应绑定的DOM元素
}

使用

复制代码
bodyRefs.current[`${设置对应的name}`]
相关推荐
答案answer3 小时前
一些经典的3D编辑器开源项目
前端·开源·three.js
亿元程序员3 小时前
Creator都快4.0了,怎么能没有这样的功能?
前端
q***64973 小时前
SpringMVC 请求参数接收
前端·javascript·算法
万少3 小时前
流碧卡片 6 小时闪电开发 AI gemini-3-pro-preview ! 秒出小红书爆款图,免下载直接用
前端·后端·ai编程
向葭奔赴♡3 小时前
若依系统权限控制全流程解析
前端·javascript·vue.js·ruoyi·navicat
IT_陈寒3 小时前
Python开发者必知的5个高效技巧,让你的代码性能提升50%
前端·人工智能·后端
u***u6853 小时前
Vue虚拟现实案例
前端·vue.js·vr
q***96584 小时前
springboot3整合knife4j详细版,包会!(不带swagger2玩)
android·前端·后端
艾小码4 小时前
Vue 3 defineProps 与 defineEmits 深度解析
前端·javascript·vue.js
前端炒粉7 小时前
35.LRU 缓存
开发语言·javascript·数据结构·算法·缓存·js