李恒道 发表于 2022-2-24 22:01:58

初学vue有感

Vue3除了使用选项api以外,还支持组合式api

其实在选项api的时期就已经初见端倪

vue在读取methods的时候,会对其进行bind处理,绑定到vue当前实例上

而数据仅进行object.defineproperty处理,在vue实例的render模板绘制的时期,会通过watch/dep相互进行收集

那为什么不能将其放在任何一个位置?

于是Vue3的组合式api分离了数据和模板之间的依赖

个人认为这就是vue3的革新

处处都可以搞成响应式,不在意数据声明的位置,而着重注意依赖的收集

处处都不是vuex,处处都是vuex

而vue3的ref和reactive

reactive保存对象其实相当于一个proxy代理

而ref需要保存基础对象,并且收集依赖,所以说我们才需要通过.value来保存基础对象的值,来进行访问数据的劫持处理

这也是为什么compouted的时候经常会使用()=>a.b来做数据读取的原因,为了传入函数,让compouted的过程中调用函数来收集依赖

同时对ts的兼容性也更上一层楼

之前的装饰器写法其实我个人还是不怎么适应的,并且装饰器貌似也是实验性语法

对于ts目前没怎么多加尝试,基本一路any,因为实在找不到什么特别好的资料(难受)

还有一个有趣的是

我们可以在对象内的属性设置一个object.definpeorperty,转发读取其他响应式对象

也可以使网页正常运行,同时节省了计算属性初始化的损耗

这点我觉得平常开发的时候可以玩一些很有趣的写法

但是到底怎么做依赖收集目前还没有研究过源码

有时间的话后续会分析一下!

大药科技 发表于 2022-2-25 09:58:53

大佬真是厉害{:4_93:}

李恒道 发表于 2022-2-25 10:54:14

大药科技 发表于 2022-2-25 09:58
大佬真是厉害

这是学习心得!呜呜呜

大药科技 发表于 2022-2-25 11:21:16

李恒道 发表于 2022-2-25 10:54
这是学习心得!呜呜呜

很厉害了可以抱大腿吗?{:4_114:}

李恒道 发表于 2022-2-25 11:28:41

大药科技 发表于 2022-2-25 11:21
很厉害了可以抱大腿吗?

没大腿...
天天在论坛被大哥们花式毒打

大药科技 发表于 2022-2-25 11:29:39

李恒道 发表于 2022-2-25 11:28
没大腿...
天天在论坛被大哥们花式毒打

{:4_114:}李哥求教JS啊

李恒道 发表于 2022-2-25 11:53:07

大药科技 发表于 2022-2-25 11:29
李哥求教JS啊

顺着开发教程一节一节学呗
哪里不会查哪里
论坛提问也可以的

大药科技 发表于 2022-2-25 14:05:36

李恒道 发表于 2022-2-25 11:53
顺着开发教程一节一节学呗
哪里不会查哪里
论坛提问也可以的

{:4_114:}{:4_114:}{:4_114:}{:4_114:}{:4_114:}{:4_114:}

Ne-21 发表于 2022-2-25 20:56:10

ggnba a a a
页: [1]
查看完整版本: 初学vue有感