【vue3|第11期】Vue3中的ref属性:让元素引用变得简单

日期:2024年6月19日
作者:Commas
签名:(ง •_•)ง 积跬步以致千里,积小流以成江海……
注释:如果您觉得有所帮助,帮忙点个赞,也可以关注我,我们一起成长;如果有不对的地方,还望各位大佬不吝赐教,谢谢^ - ^
1.01365 = 37.7834;0.99365 = 0.0255
1.02365 = 1377.4083;0.98365 = 0.0006

说在最前面:本文 vue3 的示例代码,在没有另外声名的情况下,均采用 <script setup> 组合式代码风格,风格统一,避免混乱,请各位新老食客放心食用哈 ^ _ ^



在这里插入图片描述


一、前言

Vue3 中,ref 是一个特殊的属性,它可以附加到 HTML 元素任何组件 上,用来创建对 DOM 元素组件实例 的引用 。这对于需要直接操作 DOM 元素的场景非常有用,例如读取元素的属性设置元素的样式调用组件的方法等。

二、如何定义ref?

Vue3 中,可以通过 ref() 函数来创建一个 ref 对象。这个数据对象包含一个 value 属性,该属性的值就是被引用的 DOM 元素组件实例。当你需要访问这个 DOM元素组件实例 时,可以通过 value 属性 来获取。

<template>
	<div ref="myDiv">Hello, Vue3!</div>
</template>

<script setup>
	import { ref } from 'vue';
	const myDiv= ref(null);

    // 在组件挂载后,可以通过myDiv.value访问到DOM元素
    onMounted(() => {
      console.log(myElement.value); // 输出: <div>Hello, Vue3!</div>
    });

</script>

三、ref 属性有什么作用?

ref 属性 的主要作用是提供一种便捷的方式来 访问和操作 DOM 元素或组件实例。通过 ref 属性,我们可以直接访问元素的属性和方法,无需通过事件或数据绑定来进行操作。这在某些场景下可以大大简化我们的代码,提高开发效率。如:

  • 改变元素的大小、位置等样式属性
  • 添加或移除事件监听器
  • 调用原生的JavaScript方法

四、什么场景下使用 ref 属性?

ref 属性通常用于以下场景:

  • 访问和操作 DOM 元素:当你需要直接访问和操作 DOM 元素时,可以使用 ref 属性。例如,获取输入框的值、设置元素的样式等。
  • 调用组件方法:当你需要调用子组件的方法时,可以使用 ref 属性。例如,调用子组件的某个功能方法。
  • 访问子组件实例:当你需要访问子组件的实例时,可以使用 ref 属性。例如,获取子组件的数据或监听子组件的事件。

五、注意事项

  • 尽量避免过度使用 ref 属性。在大多数情况下,我们应该优先使用 Vue数据绑定事件系统 来实现功能,只有在必要时才使用 ref 属性。
  • ref 只有在组件挂载完成后才能获取到对应的元素组件实例
  • ref 引用的元素在后续的操作中被移除或替换,对应的 ref 可能也会变为 undefined

六、总结

ref 属性为我们提供了一种便捷的方式来访问和操作 DOM 元素组件实例,使得我们可以更加灵活地处理各种场景。但是,我们需要谨慎使用 ref 属性,避免过度依赖它,保持代码的可维护性可读性


参考文章:


版权声明:本文为博主原创文章,如需转载,请给出:
原文链接:https://blog.csdn.net/qq_35844043/article/details/139787397

  • 17
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Commas.KM

码路共同进步,感恩一路有您

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值