【Uniapp-Vue3】使用ref定义响应式数据变量

如果想要响应式的数据变量,不能直接定义,如下面这个例子:

我们直接定义了变量num1,使用定时器使他每一秒+1,我们理想的状态是num1的值为多少,插值表达式中的值就为多少。

但是我们会发现num1的值一直在改变,而页面上的差值表达式一直是num1的初值,没有我们想要的响应式的效果。

使用ref定义响应式变量

import {ref} from 'vue';

let 变量名 = ref(值);

我们只需要用ref对数据稍加修饰,就可以得到响应式的变量。

这里需要注意一下ref变量的值,如果我们输出num2,就会得到如下的对象:

因此我们在Script中想要对变量进行修改,应该用 变量名.value 的形式,而在差值表达式中不需要加上 .value ,这点很容易忘记。

此外,我们还可以使用ref去定义其他数据类型的变量:

不需要纠结哪些数据类型用ref,哪些数据类型用reactive,所有变量都可以使用ref来进行定义。

相关推荐
烛阴11 分钟前
bignumber.js深度解析:驾驭任意精度计算的终极武器
前端·javascript·后端
计蒙不吃鱼19 分钟前
一篇文章实现Android图片拼接并保存至相册
android·java·前端
全职计算机毕业设计40 分钟前
基于Java Web的校园失物招领平台设计与实现
java·开发语言·前端
啊~哈1 小时前
vue3+elementplus表格表头加图标及文字提示
前端·javascript·vue.js
xiaogg36781 小时前
vue+elementui 网站首页顶部菜单上下布局
javascript·vue.js·elementui
小小小小宇2 小时前
前端小tips
前端
HelloWord~2 小时前
SpringSecurity+vue通用权限系统
vue.js·spring boot
小小小小宇2 小时前
二维数组按顺时针螺旋顺序
前端
安木夕2 小时前
C#-Visual Studio宇宙第一IDE使用实践
前端·c#·.net
努力敲代码呀~2 小时前
前端高频面试题2:浏览器/计算机网络
前端·计算机网络·html