当前位置: 首页 > news >正文

vue3 动态绑定 ref 并获取其 dom

 方法1: v-for

在 v-for 中建议用对象存储 refs 而非数组

函数参数 el‌:动态绑定时会传入当前 DOM 元素或组件实例

<template><div v-for="item in items" :key="item.id"><div :ref="(el) => setItemRef(el, item.id)"></div></div>
</template><script setup>
import { ref } from 'vue'const items = ref([{ id: 1 }, { id: 2 }])
const itemRefs = ref({})const setItemRef = (el, id) => {if (el) {itemRefs.value[id] = el // 存储 DOM 引用}
}onMounted(() => {console.log(itemRefs.value) // 输出 {1: div, 2: div}
})
</script>

 for 循环 可使用单/多层 嵌套

<!-- 单层循环 -->
<div v-for="(item, index) in list" :key="index"><input :ref="(el) => (refsArray[index] = el)" />
</div><!-- 嵌套循环 -->
<div v-for="(group, i) in groups" :key="i"><div v-for="(item, j) in group.items" :key="j"><input :ref="(el) => (nestedRefs[i][j] = el)" /></div>
</div>

通过 refsArray[index] 或 nestedRefs[i][j] 即可访问嵌套元素

方法2:使用计算属性

const getRefName = (index) => `itemRef_${index}`

相关文章:

  • Python 自动化运维与DevOps实践
  • Docker如何实现容器之间的通信
  • 李沐动手深度学习(pycharm中运行笔记)——12.权重衰退
  • GitLab CVE-2025-4278 安全漏洞解决方案
  • openLayers切换基于高德、天地图切换矢量、影像、地形图层
  • 使用NPOI库导出多个Excel并压缩zip包
  • 【跨界新视野】信号处理遇上VR/AR:下一代沉浸体验的核心技术与您的发表蓝海
  • STUN (Session Traversal Utilities for NAT) 服务器是一种网络协议
  • Linux 上 Ollama 部署为系统服务
  • 飞算JavaAI编程助手在IDEA中的安装教程:本地安装、离线安装、在线安装方法大全
  • 【Redis】Redis核心探秘:数据类型的编码实现与高速访问之道
  • 114. 二叉树展开为链表 --- 头插法(js)
  • SQL关键字三分钟入门: 表结构管理与分区设计。(ALTER、MODIFY、CHANGE、DEFAULT、VALUES、LESS THAN、RANGE)
  • 湖北理元理律师事务所:法律框架下的债务优化与生活重建双轨支持
  • 量子级网络通信系统:超维架构下的开发与星际级交互实现,突破传统边界的异构网络通信矩阵系统设计
  • Telerik生态整合:Kendo UI for Angular组件在WinForms应用中的深度嵌入(二)
  • 【算力网络】算网安全
  • 工程师生活:清除电热水壶(锅)水垢方法
  • 记一次jdk版本引起的生产问题
  • 详解鸿蒙Next仓颉开发语言中的全屏模式
  • 龙岩b2b平台推广公司/保定seo推广公司
  • c 做的网站/免费二级域名查询网站
  • 如何做网课网站/2345网址导航是什么浏览器
  • 北京哪家做网站好/武汉网站seo推广公司
  • 软件和网站开发/百度竞价排名价格查询
  • 深圳营销型网站制作公司/乔拓云智能建站系统