自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 收藏
  • 关注

原创 4.8watch

watch的实现基于调度任务,响应式式数据修改触发cb函数。cb函数里的第三个传参onInvalidate,解决静态问题。

2025-11-07 11:14:10 144

原创 树形结构数据向上汇总的方法

【代码】数据结构数据向上汇总的方法。

2025-11-07 10:09:28 190

原创 响应系统的作用与实现

这里effect允许第二个传参options,options对象上加一个schedule调度函数,将options挂载到对应的副作用函数上, trigger触发副作用函数时先判断是否有schedule调度函数,如果有则执行调度函数。响应式数据修改后就会立即触发副作用函数,但有些场景下,并不希望它立即执行,而是希望它在需要的时候才执行,例如计算属性。这样就做到了懒计算,但并没有实现计算结果的缓存,每次去取fn.value的值时,都会触发副作用函数的计算,但值其实并没有变,所以要对值进行缓存。

2025-11-03 22:29:16 325

原创 4.5嵌套的effect与effect栈

name期望执行的副作用函数effectFn1,age期望执行的副作用函数为effectFn2,而结果执行后的结果是 name与age收集副作用函数均为effectFn2。这是为什么,并且此时如果再修改name,先执行cleanup函数,从set中删除副作用函数effectFn2,在执行effectFn2触发收集,这时只会触发age的收集。副作用函数发生嵌套时,内层的会覆盖外层的,并且不会恢复到原来的值,这时外层的去响应式数据再去依赖收集,收集到的就会使内层的副作用函数。自己加的戏不是书上的,别被我误导。

2025-11-02 22:10:08 207

原创 vue3的响应式数据与副作用函数

虽然学生状态已经改为退学,但是age和text两个属性收集的副作用函数依然存在,修改两个属性值时,依然会触发副作用函数,尽管有if判断,但这两个属性本质上已经不需要响应,这里就需要将 收集了副作用函数的 set集合,存在副作用函数上,执行副作用函数的时候,先删除,在收集,这里 isExit 为true 时,age和text两属性修改,不再会触发副作用函数,而 isExit改为false,获取属性值的时候会触发get方法,收集属性对应的副作用函数进入set集合中,设置属性时再读取属性的副作用函数执行。

2025-11-01 12:59:25 323

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除