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

Vue组件:模板引用ref属性的使用

 Vue 组件系列文章:

《Vue组件:创建组件、注册组件、使用组件》

《Vue组件:使用Prop实现父组件向子组件传递数据》

《Vue组件:使用$emit()方法监听子组件事件》

《Vue组件:插槽》

《Vue组件:混入》

《Vue组件:动态组件、缓存组件、异步组件》

《Vue组件:依赖注入provide和inject的使用》

《Vue组件:模板引用ref属性的使用》 

虽然 Vue 的声明性渲染模型为你抽象了大部分对 DOM 的直接操作,但在某些情况下,我们仍然需要直接访问底层 DOM 元素。要实现这一点,我们可以使用特殊的 ref 属性。

<template><!-- 第一步:给 DOM 元素,添加 ref 属性 -->搜索:<input ref="search" type="text" />
</template>

挂载结束后引用都会被加载在 this.$refs 之上。

<template><!-- 第一步:给 DOM 元素,添加 ref 属性 -->搜索:<input ref="search" type="text" />
</template><script>
export default {mounted() {//第二步:使用 this.$refs 获取 DOM 元素输入框,并让输入框自动获取焦点this.$refs.search.focus();}
}
</script>

【实例】使用 ref 获取 DOM 元素并赋值。

<template><fieldset><legend>组件</legend><!-- 第一步:给 DOM 元素,添加 ref 属性 --><h3 ref="title">标题名称</h3><p>博客信息:<input ref="blogName" type="text" /></p><p>博客地址:<input ref="blogUrl" type="text" /></p></fieldset>
</template><script>
export default {//说明:mounted()生命周期钩子,在 DOM 文档渲染完毕之后进行调用。mounted() {//第二步:使用 this.$refs 获取 DOM 元素,并赋值内容this.$refs.title.innerHTML = '使用 ref 获取 DOM 元素';this.$refs.blogName.value = '您好,欢迎访问 pan_junbiao的博客';this.$refs.blogUrl.value = 'https://blog.csdn.net/pan_junbiao';}
}
</script><style scoped>
input {width: 300px;padding: 3px;font-size: 16px;
}
</style>

执行结果:

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 【python】【绘制小程序】动态爱心绘制
  • 如何利用 Visual Studio 和 AI 工具实现高效编程
  • SQLPlus执行成功但数据没有更新的原因及解决办法
  • CTFHUB 技能树 信息泄露 HG泄露 解密过程记录
  • 【线性回归模型】
  • 分班 - 华为OD统一考试(E卷)
  • 【machine learning-七-线性回归之成本函数】
  • 力扣232:用栈实现队列
  • 列表、数组排序总结:Collections.sort()、list.sort()、list.stream().sorted()、Arrays.sort()
  • mysql性能优化-延迟写和异步写优化
  • Python中使用Redis布隆过滤器
  • miniconda环境配置
  • 深度学习自编码器 - 收缩自编码器(CAE)篇
  • 信安 实验1 用Wireshark分析典型TCP/IP体系中的协议
  • OpenCV运动分析和目标跟踪(3)计算图像序列的加权平均值函数accumulateWeighted()的使用
  • 【comparator, comparable】小总结
  • JAVA 学习IO流
  • JavaScript创建对象的四种方式
  • LeetCode刷题——29. Divide Two Integers(Part 1靠自己)
  • mysql innodb 索引使用指南
  • nginx 负载服务器优化
  • 聊聊flink的BlobWriter
  • 原生 js 实现移动端 Touch 滑动反弹
  • 如何通过报表单元格右键控制报表跳转到不同链接地址 ...
  • 完善智慧办公建设,小熊U租获京东数千万元A+轮融资 ...
  • #NOIP 2014#Day.2 T3 解方程
  • #常见电池型号介绍 常见电池尺寸是多少【详解】
  • $().each和$.each的区别
  • ${ }的特别功能
  • (1)(1.19) TeraRanger One/EVO测距仪
  • (2)Java 简介
  • (2)空速传感器
  • (2020)Java后端开发----(面试题和笔试题)
  • (2022版)一套教程搞定k8s安装到实战 | RBAC
  • (附源码)springboot炼糖厂地磅全自动控制系统 毕业设计 341357
  • (附源码)基于SSM多源异构数据关联技术构建智能校园-计算机毕设 64366
  • (更新)A股上市公司华证ESG评级得分稳健性校验ESG得分年均值中位数(2009-2023年.12)
  • (黑马出品_高级篇_01)SpringCloud+RabbitMQ+Docker+Redis+搜索+分布式
  • (强烈推荐)移动端音视频从零到上手(上)
  • (三)Pytorch快速搭建卷积神经网络模型实现手写数字识别(代码+详细注解)
  • (一)Neo4j下载安装以及初次使用
  • (转)自己动手搭建Nginx+memcache+xdebug+php运行环境绿色版 For windows版
  • .DFS.
  • .gitattributes 文件
  • .mp4格式的视频为何不能通过video标签在chrome浏览器中播放?
  • .NET 6 在已知拓扑路径的情况下使用 Dijkstra,A*算法搜索最短路径
  • .NET 8 中引入新的 IHostedLifecycleService 接口 实现定时任务
  • .NET 8.0 中有哪些新的变化?
  • .net framwork4.6操作MySQL报错Character set ‘utf8mb3‘ is not supported 解决方法
  • .NET/C# 项目如何优雅地设置条件编译符号?
  • .Net6支持的操作系统版本(.net8已来,你还在用.netframework4.5吗)
  • .NET未来路在何方?
  • /etc/fstab和/etc/mtab的区别
  • /etc/motd and /etc/issue
  • @Data注解的作用