这里的ref应该怎么理解

这里的ref应该怎么理解

https://img1.sycdn.imooc.com//climg/632d469509c2bf6007220612.jpg

1里是将elemRef用ref赋值为一个值类型的响应式变量,这个值用null来进行初始化,请问这里的null的作用只是初始化ref的值吗?只能用null吗?如果随便用个值来初始化行不行呢?比如const elemRef=ref(10)?

2里是将elemRef再次赋值给ref,这里的ref应该怎么理解呢?也是一个值类型的响应式数据吗?不是很能理解

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕小李 2022-09-23 14:13:36

同学你好,解答如下:

1、null就是一个值类型的响应式,这里相当于是空。至于是否只能用null其实不是的,主要是看需求,比如说响应式中的值是对象或者数组或者字符串或数字都是可以的。所以在初始化的时候要看想给数据类型本身是什么。那么这里是因为在template中使用了ref,所以初始的时候相当于是ref=''。

2、在template中使用ref实际相当于document.querySelet('xxx')是一样的,就是获取dom元素。

https://img1.sycdn.imooc.com//climg/632d4ded099c3a7110670581.jpg

上图中定义了一个elemRef将它变成响应式的,然后在返回elemRef这样是为了上面的template中可以使用这个变量。

祝学习愉快

  • 提问者 困惑小张 #1

    所以可以把在template中使用的ref理解为一个选择器吗?需要给这个选择器一个变量使得我们在setup中获取元素节点时能够有一个变量做指向,而在vue3里指定了一个规则就是使用ref响应式来做这个变量,因此这个地方对变量的需求只是希望它是响应式的,没有特定的类型需求,所以初始化设置为null,空就可以。

    2022-09-23 14:29:24
  • 好帮手慕小李 回复 提问者 困惑小张 #2

    同学你好,以上的理解都是对的。祝学习愉快!

    2022-09-23 14:38:14
  • 提问者 困惑小张 回复 好帮手慕小李 #3

    诶好的,谢谢老师的解答!

    2022-09-23 14:39:10
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师