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

vue中的ref/reactive区别及原理

Vue中的ref和reactive是两种不同的数据响应式管理方式。

ref是Vue 3中新加入的特性,它可以将一个普通的JavaScript对象转换为响应式对象。通过ref创建的响应式对象在访问和修改时会自动触发重新渲染。ref返回的是一个包含value属性的对象,访问或修改数据时需要通过value属性进行操作。

import { ref } from 'vue';const count = ref(0);// 访问响应式数据
console.log(count.value);// 修改响应式数据
count.value++;// ref对象仍然是一个对象
console.log(count); // { value: 1 }

reactive是Vue 2中的一个API,它可以将一个普通的JavaScript对象转换为响应式对象。通过reactive创建的响应式对象被称为响应式数据。访问和修改响应式数据时,Vue会跟踪数据的变化并触发视图的更新。

import { reactive } from 'vue';const state = reactive({count: 0
});// 访问响应式数据
console.log(state.count);// 修改响应式数据
state.count++;// state对象仍然是一个对象
console.log(state); // { count: 1 }

原理上,ref和reactive都是通过Proxy实现的。当访问响应式对象的属性时,Vue会使用Proxy拦截访问操作,并将该属性标记为依赖,当属性被修改时,Vue会触发相应的更新操作。ref和reactive的区别在于ref是对对象的包装,而reactive是对整个对象进行响应式化处理。

http://www.lryc.cn/news/308323.html

相关文章:

  • 深度学习介绍与环境搭建
  • QT C++实践|超详细数据库的连接和增删改查操作|附源码
  • matlab:涉及复杂函数图像的交点求解
  • Unity(第二十二部)官方的反向动力学一般使用商城的IK插件,这个用的不多
  • nginx反向代理,获取客户端ip
  • 13 Codeforces Round 886 (Div. 4)G. The Morning Star(简单容斥)
  • CLion 2023:专注于C和C++编程的智能IDE mac/win版
  • 数据可视化基础与应用-02-基于powerbi实现连锁糕点店数据集的仪表盘制作
  • 前后端分离Vue+nodejs酒店公寓客房预订管理系统udr7l-java-php-django-springboot
  • VUE打包的dist文件放到后端一起发布
  • React入门之React_渲染基础用法和class实例写法
  • Git自动忽略dll文件的问题
  • sql中如何实现递归
  • GPT 的基础 - T(Transformer)
  • 微信小程序 --- 常用样式和组件
  • 深圳智能制造半导体芯片行业源代码防泄密完整解决方案
  • Unity UI适配规则和对热门游戏适配策略的拆解
  • 嵌入式学习day25 Linux
  • Oracle数据泵跨大版本迁移数据库
  • 如何在Win系统从零开始搭建Z-blog网站,并将本地博客发布到公网可访问
  • sawForceDimensionSDK安装,sigma7+ros
  • 全量知识系统问题及SmartChat给出的答复 之3
  • 【常用的 SVN 命令及简要示例】
  • ISP代理是什么?怎么用?
  • 微服务之qiankun主项目+子项目搭建
  • 双非二本找实习前的准备day2
  • 快速搭建宠物医院服务小程序的步骤,无需编程经验
  • 从0开始python学习-53.python中flask创建简单接口
  • 如何怎麼搭建高效的爬蟲全球代理IP池?
  • FinalShell连接Linux