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}`]
相关推荐
用户761736354011 分钟前
浏览器渲染原理
前端·浏览器
拉不动的猪1 分钟前
Vue 跨组件通信底层:provide/inject 原理与实战指南
前端·javascript·面试
得物技术1 分钟前
从数字到版面:得物数据产品里数字格式化的那些事
前端·数据结构·数据分析
用户66006766853913 分钟前
用 Symbol 解决多人协作中的对象属性冲突实战
前端·javascript
yinuo16 分钟前
前端跨页面通讯终极指南①:postMessage 用法全解析
前端
努力往上爬de蜗牛28 分钟前
react native打包后发生的问题
react.js
c***979830 分钟前
Vue性能优化实战
前端·javascript·vue.js
哈哈O哈哈哈32 分钟前
ECMAScript 2025 正式发布:10 个让你眼前一亮的 JavaScript 新特性!
前端·javascript
哈哈O哈哈哈35 分钟前
2025 年值得关注的 CSS 新属性与功能
前端·css
我叫张小白。40 分钟前
TypeScript泛型进阶:掌握类型系统的强大工具
前端·javascript·typescript