vue3 toRefs详解

02-27 阅读 0评论

简介

toRefs函数的作用是将响应式对象中的所有属性转换为单独的响应式数据,对象成为普通对象,并且值是关联的。在这个过程中toRefs会做以下两件事:

vue3 toRefs详解,vue3 toRefs详解,词库加载错误:未能找到文件“C:\Users\Administrator\Desktop\火车头9.8破解版\Configuration\Dict_Stopwords.txt”。,使用,地址,修改,第1张
(图片来源网络,侵删)
  1. 把一个响应式对象转换成普通对象
  2. 对该普通对象的每个属性都做一次ref操作,这样每个属性都是响应式的

    说明:

  • reactive 对象取出的所有属性值都是非响应式的,而利用 toRefs 可以将一个响应式 reactive 对象的所有原始属性转换为响应式的 ref 属性。
  • reactive的响应式功能是赋值给对象,如果展开对象,会让数丢失响应的能力
  • 使用toRefs可以保证对象展开的每个属性都是响应式的

    应用场景:

    • 展开响应式对象时,想使用响应式对象中的多个或者所有属性做为响应式数据。
    • 当函数返回响应式对象时,toRefs非常有用,这样消费组件就可以在不丢失响应式的情况下对返回的对象进行分解使用。-

      示例:展开运算符

          

      姓名:{{name}}

      年龄:{{age}}

      地址:{{addr.province}}-{{addr.city}}

      修改名字 import { reactive } from 'vue' export default { setup() { const user = reactive({ name: '张三', age: 19, addr: { province: '河南', city: '郑州' } }) return { ...user // 展开运算符 } } }

      注意:响应式对象的处理,是加给对象的,如果对对象做了展开操作,那么就会丢失响应式的效果。所以上面代码,单击button时,不能改变页面显示效果。

      示例:

          

      姓名:{{name}}

      年龄:{{age}}

      地址:{{addr.province}}-{{addr.city}}

      修改名字 import { reactive, toRefs } from 'vue' export default { setup() { const user = reactive({ name: '张三', age: 19, addr: { province: '河南', city: '郑州' } }) return { ...toRefs(user) } } }

      本次单击按钮可以实现修改效果。

      vue3 toRefs详解,vue3 toRefs详解,词库加载错误:未能找到文件“C:\Users\Administrator\Desktop\火车头9.8破解版\Configuration\Dict_Stopwords.txt”。,使用,地址,修改,第2张
      (图片来源网络,侵删)
      vue3 toRefs详解,vue3 toRefs详解,词库加载错误:未能找到文件“C:\Users\Administrator\Desktop\火车头9.8破解版\Configuration\Dict_Stopwords.txt”。,使用,地址,修改,第3张
      (图片来源网络,侵删)

免责声明
本网站所收集的部分公开资料来源于AI生成和互联网,转载的目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。
文章版权声明:除非注明,否则均为主机测评原创文章,转载或复制请以超链接形式并注明出处。

发表评论

快捷回复: 表情:
评论列表 (暂无评论,人围观)

还没有评论,来说两句吧...

目录[+]