vue3中的ref为什么要用.value取值?为什么返回一个对象?

这篇文章将从vue3源码进行分析
当我们写下let msg = ref(‘ljp’)这个代码时,vue3将如何执行
首先找到vue3中三大模块中的reactivity模块,在这个文件夹下的src文件夹下的ref.ts文件下,如图
vue3中的ref为什么要用.value取值?为什么返回一个对象?_第1张图片
然后调用如图下的ref函数(这个ref是个重载函数)其他解释如图vue3中的ref为什么要用.value取值?为什么返回一个对象?_第2张图片
createRef解释如下
vue3中的ref为什么要用.value取值?为什么返回一个对象?_第3张图片
RefImpl解释如下:
vue3中的ref为什么要用.value取值?为什么返回一个对象?_第4张图片
toReactive(这个函数和ref文件在同个目录下)的解释如下
在这里插入图片描述

vue3中的ref为什么要用.value取值?为什么返回一个对象?_第5张图片
到这里就结束了
源码中最后是以get set函数对value进行获取以及修改的,如图
vue3中的ref为什么要用.value取值?为什么返回一个对象?_第6张图片

你可能感兴趣的:(vue,typescript,javascript,前端)