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 把每个子组件塞进去
<div 
	ref={ele=> bodyRefs.current[info.name] = ele} 
/>

最终获取到的bodyRefs

console.log(bodyRefs.current)

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

使用

bodyRefs.current[`${设置对应的name}`]

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-31 01:50:03       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-31 01:50:03       106 阅读
  3. 在Django里面运行非项目文件

    2024-03-31 01:50:03       87 阅读
  4. Python语言-面向对象

    2024-03-31 01:50:03       96 阅读

热门阅读

  1. 力扣46---全排列(递归)

    2024-03-31 01:50:03       39 阅读
  2. 【华为OD机试】剩余银饰的重量【C卷|100分】

    2024-03-31 01:50:03       41 阅读
  3. [leetcode] 12. 整数转罗马数字

    2024-03-31 01:50:03       198 阅读
  4. [TS面试]TS中的tsconfig.json中那些配置项信息?

    2024-03-31 01:50:03       40 阅读
  5. AI大模型学习和实践

    2024-03-31 01:50:03       41 阅读
  6. 扫雷(蓝桥杯)

    2024-03-31 01:50:03       42 阅读
  7. C++:右值引用 && 和移动赋值std::move分析

    2024-03-31 01:50:03       40 阅读
  8. ResutBuilder 学习笔记二:增加新的输入数据类型

    2024-03-31 01:50:03       46 阅读