标签的ref属性

标签的ref属性

当我们想要获取一个标签对应的 DOM 元素的时候在 JavaScript 中,我们通过 document.getElementById() 来借助类选择器的写法获取,但是在 Vue 中,我们的 DOM 元素是挂载在同一个网页上的,这些名称难免会重复,所以需要别的方式去获取,给标签添加ref属性正好可以解决这个问题。

使用

加在Html标签

<script lang="ts" setup name="WatchEffect">import { ref } from 'vue';let myRef = ref(); function changeH1() {console.log(myRef.value);}
</script><template><div class="class"><h1 ref="myRef">标签ref</h1><br><button @click="changeH1">获取h1标签值</button></div>  
</template><style scoped>.class {background-color: #f8f9fa; /* 背景颜色 */padding: 20px; /* 内边距 */border-radius: 10px; /* 圆角 */box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* 阴影 */text-align: center; /* 文本居中 */max-width: 500px; /* 最大宽度 */margin: 0 auto; /* 水平居中 */}button {background-color: blue;color: white;border: none;padding: 10px 20px;border-radius: 5px;cursor: pointer;margin: 10px 10px 0 10px; /* 外边距 */transition: background-color 0.3s ease; /* 按钮背景颜色过渡效果 */}
</style>

只需要在对应标签里面加入 ref 属性,然后在 script 标签里面定义即可。

加在组件上

<script lang="ts" setup name="WatchEffect">import { ref } from 'vue';import Car from './Car.vue';let myRef = ref(); let car = ref();function changeH1() {console.log(myRef.value);}function getCar() {console.log(car.value);}
</script><template><div class="class"><h1 ref="myRef">标签ref</h1><br><button @click="changeH1">获取h1标签值</button><br><button @click="getCar">获取Car组件的值</button></div><Car ref="car" /></template><style scoped>.class {background-color: #f8f9fa; /* 背景颜色 */padding: 20px; /* 内边距 */border-radius: 10px; /* 圆角 */box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* 阴影 */text-align: center; /* 文本居中 */max-width: 500px; /* 最大宽度 */margin: 0 auto; /* 水平居中 */}button {background-color: blue;color: white;border: none;padding: 10px 20px;border-radius: 5px;cursor: pointer;margin: 10px 10px 0 10px; /* 外边距 */transition: background-color 0.3s ease; /* 按钮背景颜色过渡效果 */}
</style>
<script lang="ts" setup name="Car">import { ref, defineExpose } from 'vue'let brand = ref("奔驰")let price = ref(30)function changePrice() {price.value += 10}  function changeBrand() {brand.value = "宝马"}// 向外暴露brand和pricedefineExpose({ brand, price })
</script><template><div class="class"><h2>品牌:{{ brand }}</h2><h2>价格:{{ price }}万</h2><button @click="changePrice">点击价格+10</button><br/><button @click="changeBrand">修改品牌</button></div>
</template><style scoped>.class {display: flex;flex-direction: column;justify-content: center;align-items: center;height: 100%; /* 使内容占满整个高度 */color: rgb(214, 12, 12);font-size: 20px;}button {background-color: blue;color: white;border: none;padding: 10px 20px;border-radius: 5px;cursor: pointer;margin-top: 10px;}
</style>

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/420484.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

变压器制造5G智能工厂工业物联数字孪生平台,推进制造业数字化转型

变压器制造5G智能工厂工业物联数字孪生平台&#xff0c;推进制造业数字化转型。作为传统制造业的重要组成部分&#xff0c;变压器制造行业也不例外地踏上了数字化转型的快车道。而变压器制造5G智能工厂物联数字孪生平台的出现&#xff0c;更是为这一进程注入了强大的动力&#…

docker基本介绍

什么是docker docker是一个开源的容器平台&#xff0c;用于开发、交付和部署 运行应用程序 简单来说 也就是docke他允许开发者将自己的操作环境以及依赖关系打包成一个容器&#xff0c;移动到其他机器上可以供其他人使用&#xff0c;还可以打包成镜像&#xff0c;上传到网络&…

基于yolov8的血细胞检测计数系统python源码+onnx模型+评估指标曲线+精美GUI界面

【算法介绍】 基于YOLOv8的血细胞检测与计数系统是一种利用深度学习技术&#xff0c;特别是YOLOv8目标检测算法&#xff0c;实现高效、准确血细胞识别的系统。该系统能够自动识别并计数图像或视频中的血细胞&#xff0c;包括红细胞、白细胞和血小板等&#xff0c;为医疗诊断提…

硬件工程师笔试面试——MOS管

目录 8、MOS管 8.1 基础 MOS管原理图 MOS实物图 8.1.1 概念 8.1.2 特点 8.1.3 类型 7.2 相关问题 7.2.1 MOS管在不同应用中的阈值电压和最大漏极电流通常是多少? 7.2.2 如何根据电路设计选择合适的MOS管类型? 7.2.3 MOS管在高频应用中的优势是什么,它如何影响电路…

那些你不知道的3个comfyui小技巧,分享给大家!

前言 掌握一些小技巧&#xff0c;提升效率&#xff01; 1、图像选择器 出图批次是四张&#xff0c;然后想选一张图进入到之后的工作流&#xff0c;就可以用这个节点 默认是这样的 运行到这个节点的时候&#xff0c;会出现四张图片&#xff0c;选中满意的图片&#xff0c;点…

探索自闭症全托学校的独特魅力与特色

在自闭症儿童的教育与康复领域中&#xff0c;全托学校以其独特的魅力和特色&#xff0c;逐渐成为众多家庭的首选。这类学校不仅为自闭症儿童提供了稳定、持续且专业的成长环境&#xff0c;还通过一系列科学有效的教育方法和康复手段&#xff0c;帮助他们逐步克服障碍&#xff0…

【1】OpenCV虚拟环境搭建

文章目录 OpenCV虚拟环境搭建&#xff08;一&#xff09;安装anaconda&#xff08;二&#xff09;anaconda修改虚拟环境默认位置STEP1&#xff1a;找到C:\Users\你的用户名下的.condarc文件STEP2&#xff1a;修改指定文件夹的权限&#xff08;重点&#xff09; &#xff08;三&…

Cortex-M3架构学习:存储器系统

存储系统功能 CM3 的存储器系统与从传统 ARM 架构的相比&#xff0c;进行如下改革&#xff1a; 它的存储器映射是预定义的&#xff0c;并且还规定好了哪个位置使用哪条总线。 CM3 的存储器系统支持所谓的“位带”&#xff08;bit-band&#xff09;操作。通过它&#xff0c;实…

同时安装多个nodejs版本可切换使用,或者用nvm管理、切换nodejs版本(两个详细方法)

目录 一.使用nvm的方法&#xff1a; 1.卸载nodejs 2.前往官网下载nvm 3.安装nvm 4.查看安装是否完成 5.配置路径和淘宝镜像 6.查看和安装各个版本的nodejs 7.nvm的常用命令 二.不使用nvm&#xff0c;安装多个版本&#xff1a; 1.安装不同版本的nodejs 2.解压到你想放…

【Python】从基础到进阶(二):了解Python语言基础以及数据类型转换、基础输入输出

&#x1f525; 个人主页&#xff1a;空白诗 文章目录 一、引言二、基本数据类型转换1. 隐式转换2. 显式转换 三、基本输入输出1. 输入&#xff08;input&#xff09;2. 输出&#xff08;print&#xff09;3. 案例&#xff1a;输入姓名、年龄、身高以及体重&#xff0c;计算BMI指…

猎板通信PCB动态:苹果16系列多款设备上线,PCB供应商的机遇与挑战!

在最新的苹果供应链动态中&#xff0c;苹果公司对于PCB供应商的选择标准非常严格&#xff0c;主要考虑因素包括技术能力、生产规模、质量控制、成本效益、供应链稳定性以及环境和社会责任等。随着苹果产品技术的不断进步&#xff0c;PCB供应商也需要具备相应的技术升级能力&…

基于vue框架的成都住房租赁系统82ml7(程序+源码+数据库+调试部署+开发环境)系统界面在最后面。

系统程序文件列表 项目功能&#xff1a;用户,房东,房屋类型,房源信息,租赁信息,合同信息,租金缴纳 开题报告内容 基于Vue框架的成都住房租赁系统开题报告 一、引言 随着城市化进程的加速和人口流动的日益频繁&#xff0c;成都作为西南地区的经济、文化中心&#xff0c;住房…

关于OceanBase 多模一体化的浅析

在当今多元化的业务生态中&#xff0c;各行各业对数据库系统的需求各有侧重。举例来说&#xff0c;金融风控领域对数据库的高效事务处理&#xff08;TP&#xff09;和分析处理&#xff08;AP&#xff09;能力有着严格要求&#xff1b;游戏行业则更加注重文档数据库的灵活性和性…

【笔记】408刷题笔记

文章目录 三对角三叉树求最小带权路径UDP报文首部和TCP报文首部IP报文首部TCP报文首部UDP报文首部 刷新和再生的区别地址译码 为了区分队空队满&#xff0c;可以使用三种处理方式 1&#xff09;牺牲一个单元 队头指针在队尾指针的下一位置作为队满的标志 队满条件&#xff1a;(…

make、cmake、qmake的区别和联系

基本概念与用途 make&#xff1a; 定义&#xff1a;make是一个用于自动化构建项目的命令行工具。用途&#xff1a;它通过读取Makefile&#xff08;或makefile&#xff09;文件来执行编译、链接等操作&#xff0c;从而构建整个项目。Makefile中定义了项目中的文件依赖关系以及…

“CSS 定位”如何工作?(补充)——WEB开发系列34

CSS定位是一个非常重要的布局工具&#xff0c;它允许我们精确地控制元素的位置&#xff0c;从而创建复杂的布局效果。定位允许你从正常的文档流布局中取出元素&#xff0c;并使它们具有不同的行为&#xff0c;例如放在另一个元素的上面&#xff0c;或者始终保持在浏览器视窗内的…

数据库设计中的需求分析

在数据库设计中&#xff0c;需求分析 是至关重要的一步。它不仅是设计过程的起点&#xff0c;也是后续步骤的基础。如果需求分析出现问题&#xff0c;那么后续所有设计阶段的结果都会受到影响&#xff0c;最终可能导致整个设计返工&#xff0c;耗费大量时间和资源。因此&#x…

KubeBlocks 如何降低管理多种数据库的学习门槛

什么是 KubeBlocks KubeBlocks 是一个开源的 Kubernetes 数据库 operator&#xff0c;能够帮助用户在 Kubernetes 上运行和管理多种类型的数据库。据我们所知&#xff0c;大多数数据库 operator 通常只能管理某种特定类型的数据库&#xff0c;例如&#xff1a; CloudNativePG…

基于SSM开发的校园心理咨询平台系统的设计与实现---附源码80915

目 录 1 绪论 1.1 研究背景 1.2开发现状 1.3论文结构与章节安排 2 校园心理咨询平台系统系统分析 2.1 可行性分析 2.1.1 技术可行性分析 2.1.2 经济可行性分析 2.1.3 法律可行性分析 2.2 系统功能分析 2.2.1 功能性分析 2.2.2 非功能性分析 2.3 系统用例分析 2.4…

安卓13删除app 链接库警告弹窗Detected problems with app native

总纲 android13 rom 开发总纲说明 文章目录 1.前言2.问题分析3.代码修改彩蛋1.前言 有些客户的APP,打开首次会弹窗提示窗口, Detected problems with app native libraries (please consult log for detail):,需要删除这个窗口,避免挡住用户APP。而且这个提示有些app是以t…