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

vue3标签中的ref属性如何使用$refs获取元素

  • 用在普通DOM标签上,获取的是DOM节点。
  • 用在组件标签上,获取的是组件实例对象。

用在普通DOM标签中

获取dom元素方法一:

  1. 在需要获取的元素标签上添加ref属性

  2. 创建ref对象,存储ref属性标记的内容

  3. 通过ref上的value属性即可获取当前dom元素

    {{ person.name }}

    {{ person.age }}

    {{ person.gender }}

获取dom元素方法二:

getCurrentInstance():获取当前组件实例

  1. 在需要获取的元素标签上添加ref属性

  2. 通过getCurrentInstance解构出proxy

  3. 通过proxy.$refs.xxx即可获取当前dom元素

    {{ person.name }}

    {{ person.age }}

    {{ person.gender }}

用在组件标签上

defineExpose作用:向外暴露属性

<!-- 父组件 -->       
<template>       
  <Demo ref="demoRef"></Demo>       
</template>       

<script setup>       
import { ref, onMounted } from "vue";       
import Demo from "./components/Demo.vue";       

let demoRef = ref();       

onMounted(() => {       
  console.log(demoRef.value);  // 访问子组件Demo中的属性
});
</script>       


<!-- 子组件 -->       
<template>       
  <p>{{ person.name }}</p>       
  <div>{{ person.age }}</div>       
  <p>{{ person.gender }}</p>       
</template>       

<script setup>       
import { ref, reactive, computed, getCurrentInstance, onMounted } from "vue";

const person = reactive({  
  name: "neko", 
  age: 18,
  gender: "女",
});

let num1 = ref(0);
let num2 = ref(1);
let num3 = ref(2);
 <!-- 使用defineExpose将组件中的数据交给外部,这样父组件中的demoRef.value才可以访问到如下数据 -->
defineExpose({ num1, num2, num3, person });
</script>

http://www.kler.cn/a/450801.html

相关文章:

  • 【Unity3D】Particle粒子特效或3D物体显示在UGUI上的方案
  • 如何在centos系统上挂载U盘
  • Redis热点数据管理全解析:从MySQL同步到高效缓存的完整解决方案
  • 人工智能的未来:机遇、威胁与人类主导地位的挑战
  • 百度热力图数据处理,可直接用于论文
  • vulnhub靶场【WhowWantsToBeKing】之1
  • postman关联接口用于登录(验证码会变情况)
  • QT:QLabel的LED透明跑马灯
  • 《信管通低代码信息管理系统开发平台》Linux环境安装说明
  • es 3期 第18节-分页查询使用避坑的一些事
  • UML 建模实验
  • 全国硕士研究生入学考试(考研)择校择专业之择校主要因素
  • 【开源】一款基于Vue3 + WebRTC + Node + SRS + FFmpeg搭建的直播间项目
  • 【AI日记】24.12.24 kaggle 比赛 2-12
  • 计算机毕业设计PySpark+Hadoop中国城市交通分析与预测 Python交通预测 Python交通可视化 客流量预测 交通大数据 机器学习 深度学习
  • 【GIS教程】使用GDAL实现栅格转矢量(GeoJSON、Shapefile)- 附完整代码
  • 中职计算机网络技术理实一体化实训室建设方案
  • 把一个Vue项目的页面打包后再另一个项目中使用
  • 怎样配备公共配套设施,才能让啤酒酿造流程高效环保?
  • 【Python】理解Python的__slots__:节省内存和提升性能
  • 【机器学习案列】使用随机森林(RF)进行白葡萄酒质量预测
  • 高级技术文章:使用 Kotlin 和 Unirest 构建高效的 Facebook 图像爬虫
  • Docker Build 命令详解:在 Ubuntu 上构建 Docker 镜像教程
  • 【教程】第十一章 子任务 工时——化繁为简
  • 【es6复习笔记】Spread 扩展运算符(8)
  • STM32 高级 谈一下IPV4/默认网关/子网掩码/DNS服务器/MAC