Vue3细节记录-2

1.ref可以把基本类型和对象类型数据定义为响应式数据,但是reactive只能把对象类型的数据定义为响应式数据。

2.其实用ref去定义对象类型的数据,最底层还是借助了reactive去给对象做代理,这是个小细节,如图:

3.如果使用reactive创建的响应式对象obj,遇到直接对obj赋值新对象的情况,之前的响应式对象会变得不响应了。解决办法倒是有,用Object.assign(obj, newObj),对Object.assign方法不了解的朋友可以顺便看看这篇文章: 深入理解 JavaScript 中的 Object.assign()_object.assign(this.$state, val)-优快云博客

4.计算属性computed的返回值依赖组成它的响应式数据,如果响应式数据不发生变化,那么计算属性也不会变化;计算属性computed有缓存,函数没有缓存,多次使用的情况下计算属性比用函数更节约性能。

5. 计算属性有两种写法,一种是简写形式,只读的;另外一种是可读可写。如图:

 7.watch监视ref或者reactive包裹的数据有很多种写法和注意事项,建议全用ref就不会有以下的那么多情况了,但是所有情况也需要了解下,万一是读别人的代码呢?如图:

此外再做个小总结,watch函数第一个参数只能传入以下4个类型的数据:①ref包裹的数据(注意,应该传入data而不是data.value);②reactive包裹的数据③getter函数(就是一个有返回值的函数)④以上3点类型数据组成的数组。

7.根据条件结束监视,如图:

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值