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

Vue全流程--Vue3.0与Vue2.0响应式原理对比

Vue2中数据的响应式

需要使用Vue.set这么一个api,修改数据

需要使用Vue.delete这么一个api,删除数据

数据代理这个当面的理解可以看看我前面文章Vue全流程--数据代理的理解以及在Vue中的应用-CSDN博客

Vue3中数据的响应式

Vue3使用proxy这个api实现数据代理。相较于Vue2.0多了一个删除和增加时及时响应的能力

代理数据=reactive(源数据):实现对数据的增删改查

reflect(源数据):将代理数据的修改,反射到源数据上

const p = new Proxy(person,{//有人读取p的某个属性时调用get(target,propName){console.log(`有人读取了p身上的${propName}属性`)return Reflect.get(target,propName)},//有人修改p的某个属性、或给p追加某个属性时调用set(target,propName,value){console.log(`有人修改了p身上的${propName}属性,我要去更新界面了!`)Reflect.set(target,propName,value)},//有人删除p的某个属性时调用deleteProperty(target,propName){console.log(`有人删除了p身上的${propName}属性,我要去更新界面了!`)return Reflect.deleteProperty(target,propName)}})

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

相关文章:

  • C语言学习笔记:子函数的调用实现各个位的累加和
  • 【大模型】本地部署DeepSeek-R1:8b大模型及搭建Open-WebUI交互页面
  • Python 调用 Stabilityai API在本地生成图像
  • Python3中异常处理:try-finally语句的示例
  • Lua限流器的3种写法
  • 基于 GEE 利用插值方法填补缺失影像
  • linux部署ollama+deepseek+dify
  • 在微服务中,如何使用feign在各个微服务中进行远程调用
  • Kafka中的KRaft算法
  • vue3 -- 集成 amap(高德地图)
  • 基于用户的协同过滤算法推荐
  • 4.python+flask+SQLAlchemy+达梦数据库
  • 神经网络常见激活函数 4-LeakyReLU函数
  • PHP盲盒商城系统源码 晒图+免签+短信验证+在线回收 thinkphp框架
  • 单例模式详解(Java)
  • 2025年度Python最新整理的免费股票数据API接口
  • 2.10学习总结
  • 原生鸿蒙版小艺APP接入DeepSeek-R1,为HarmonyOS应用开发注入新活力
  • 从Word里面用VBA调用NVIDIA的免费DeepSeekR1
  • 【SpringBoot篇】基于Redis分布式锁的 误删问题 和 原子性问题
  • 【JVM详解三】垃圾回收机制
  • MySQL的字符集(Character Set)和排序规则(Collation)
  • 2025影视泛目录站群程序设计_源码二次开发新版本无缓存刷新不变实现原理
  • 常用的python库-安装与使用
  • array_walk. array_map. array_filter
  • 数据仓库和商务智能:洞察数据,驱动决策
  • Vue设计模式到底多少种?
  • HTML 属性
  • oracle如何查询历史最大进程数?
  • SpringBoot单机模式,能否支持一万用户请求并发?