1.ref和computed把javascript原始类型转换成响应式的对象
2.ref一般传入的是原始类型,都是一个个分散的变量,分散在各处
3.有什么办法把分散的变量包裹在一个对象中呢?一个新的API—reactive 和ref非常相似,也是一个函数,只不过里面的参数不是一个原始类型了,而是一个对象,reactive生成的响应式的对象 修改里面的值得时候,不用.value 了,直接当成对象的一项操作就好了,直接修改里面的值就可以了



上面得图上发现了一个可以优化的点-----上面写了好多data,我们可以使用es6的展开运算符(spread operator)把对象展开,作用是和字面意思一样,就是把东西展开。可以用在array和object上都行,那么上面的可以写成


但是上面的写法无法运行,原因是,当我们把这些值从响应式的对象中取出来之,就变成了普通的类型,而不再是响应式的类型,失去了响应性了 所以自然就不会更新了
针对这个问题vue3.0推出了一个API----toRefs(是一个函数,接收一个reactive对象作为一个参数,返回一个普通的对象,但是这个对象的每一项都变成了一个ref类型的对象)


这个时候再展开refData 展开之后的每一项都是一个响应式的对象


这次再使用这样的模板对象就可以成功的工作了

==所以要特别注意!!==你的模板中引用的是否为响应式的数据类型,这样的才能根据数据的改变做出模板更新的工作。

ref和reactive的区别:用写普通标准的javascript来类比
第一种像ref:

第二种像reactive

这里把x取出来 再pos.x更新 这时候x还是旧的值,也会丧失它的响应式

reactive的理解相关推荐

  1. Vue3中reactive的理解

    1.什么是reactive? reactive是Vue3中提供实现响应式数据的方法. 在Vue2中响应式数据是通过defineProperty来实现的. 而在Vue3响应式数据是通过ES6的Proxy ...

  2. 阿里雷卷:Reactive 基金会的成立将对开发方式带来哪些影响?

    作者 | 赵钰莹 近日,Linux 基金会宣布成立 Reactive 基金会.对于 Reactive,各位开发者应该并不陌生,尤其是 Node.js 开发者,但真正了解并意识到这件事情对开发方式带来的 ...

  3. 关于 vue3.0 实战项目 setup、 props、 reactive、ref

    关于 vue3.0 实战项目中遇到的问题 介绍vue3.0的特性: 亿点小知识 1.diff算法的优化 增加了静态标记PatchFlag 2.按需编译,体积比Vue2.x更小(Tree shaking ...

  4. wince支持多线程编程吗_以前面试只问多线程,现在都开始问响应式编程了!我懵了...

    以前面试只问多线程,现在都开始问响应式编程了! 看完这篇文章你就能有个大体的了解了. 基本介绍 目前比较流行的编程方法论有函数式编程(functional programming).响应式编程(rea ...

  5. Reactive(3)5分钟理解 SpringBoot 响应式的核心-Reactor

    目录 一.前言 二. Mono 与 Flux 构造器 三. 流计算 1. 缓冲 2. 过滤/提取 3. 转换 4. 合并 5. 合流 6. 累积 四.异常处理 五.线程调度 小结 参考阅读 一.前言 ...

  6. 理解Angular的Reactive Form

    官方文档并没有说明Template-driven Form 与Reactive Form 哪一个更好.由于之前开发过一个Ionic2项目,使用的是Template-driven Form,光是校验就有 ...

  7. 第二章 理解Reactive微服务和Vert.x

    微服务并不是一个新的东西.它源自1970年代的研究,最近火了起来是因为微服务可以让我们更快速地改变.更方便地实现价值,提高灵活性.微服务源自actor-based系统.服务设计.自动化系统.domai ...

  8. 深入理解C#第三版部分内容

     最近,粗略的读了<深入理解C#(第三版)>这本技术书,书中介绍了C#不同版本之间的不同以及新的功能. 现在将部分摘录的内容贴在下面,以备查阅. C#语言特性: 1.C#2.0 C#2的主 ...

  9. 1、Reactive Extensions for .NET(译)

    本文转自:http://www.cnblogs.com/hebeiDGL/p/3403510.html 原版资料请参阅:http://download.microsoft.com/download/2 ...

最新文章

  1. mysql centos 源码安装_CentOS5下MySQL源码安装方式
  2. 你如果只是一直囤干货,那永远不可能进步
  3. 网络推广期间发现网站快照更新过慢会影响正常网络推广吗?
  4. apache 配置rewrite模块,URL中隐藏index.php
  5. 【推导】Codeforces Round #364 (Div. 2) D. As Fast As Possible
  6. C语言学习之分别用while、 for双重循环的方式编程绘制如下图形
  7. java编译多个包_javac一次性编译多个包下的.java文件
  8. 网络仿真中数据生成相关
  9. 【转】如何写出让同事无法维护的代码
  10. http请求头中Referer的作用及危害
  11. gridview 通用分页实现
  12. 托管型呼叫中心与自建型呼叫中心的区别
  13. (转)SpringMVC学习(八)——SpringMVC中的异常处理器
  14. Ceph Block Device块设备操作
  15. 一致 先验分布 后验分布_分布式下的数据一致性问题
  16. Qt5.2.1 + VS2010安装错误(Unable to find a Qt build)
  17. 4G工业路由器如何助力自动售货机更智能?
  18. 计算机毕业设计java基于ssm的企业工资管理系统
  19. 电动车充电显示服务器无响应,纯电动汽车在充电时屏幕显示BMS无响应是怎么回事?...
  20. K.田园的饭可好吃了

热门文章

  1. Python 算法题之 俄罗斯套娃信封
  2. STM32-输出比较
  3. 浪潮服务器外接显示器,浪潮服务器简易配置手册.doc
  4. 元宇宙越捂越「热」......
  5. 2022年度回顾 | 技术篇:突破公链不可能三角的努力
  6. 华为OD请已经入职的人出来谈谈你的真实感受?
  7. [转帖]贪官给儿子的一封家信
  8. 【Python游戏】Python魔塔样板,自带Demo游戏内容(Powered by Pygame)| 附带源码
  9. MYSQL数据库备份方法及策略
  10. vue路由无痕浏览nodeJS环境搭建ElementUI简介