首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
我是日安
掘友等级
前端
Better late than never.
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
1
文章 1
沸点 0
赞
1
返回
|
搜索文章
我是日安
前端
·
21小时前
关注
从零到一打造 Vue3 响应式系统 Day 23 - Watch:基础实现
watch 是 Vue 中非常重要的一个 API,它允许开发者在响应式数据发生变化时,执行特定的副作用(side effects)。这些副作用可以是异步行为(例如发起请求)...
0
评论
分享
我是日安
前端
·
1天前
关注
从零到一打造 Vue3 响应式系统 Day 22 - Computed:缓存机制实现
在上一篇文章中,我们提到将通过「缓存」机制来解决 computed 在访问时重复执行的问题。 在 Vue 3 的源码里,computed 是靠一个「脏值标记(dirty f...
1
评论
分享
我是日安
前端
·
2天前
关注
从零到一打造 Vue3 响应式系统 Day 21 - Computed:即时更新基础实现
今天我们要在保持既有链表架构不变的前提下,实现 computed 的惰性计算 + 缓存(dirty 旗标)与调度逻辑。 示例演示 先看官方代码的效果: 可以看到控制台会先输...
3
3
分享
我是日安
前端
·
2天前
关注
从零到一打造 Vue3 响应式系统 Day 20 - Reactive:reactive 极端案例
在完成 reactive 的基本实现之后,接下来会遇到几种常见且必须处理的情况: 原始对象传入 Reactive 对象 Reactive 对象再次传入 Reactive 对...
7
2
分享
我是日安
前端
·
4天前
关注
从零到一打造 Vue3 响应式系统 Day 19 - Reactive:reactive 的基础实现
上一次我们提到: 每个对象的每个属性都需要自己的 Dep。 如何建立 target.a → Dep 的对应关系? 如何在不污染原始对象的情况下存储这个关系? 我们可以先来做...
3
评论
分享
我是日安
前端
·
5天前
关注
从零到一打造 Vue3 响应式系统 Day 18 - Reactive:深入 Proxy 的设计思路
在之前的文章中,我们已经完成了 ref 的实现,它能将原始值包装成响应式对象。现在,我们要接着完成响应式系统核心的另一部分:reactive 函数。我们的目标是接收一个完整...
2
评论
分享
我是日安
前端
·
6天前
关注
从零到一打造 Vue3 响应式系统 Day 17 - 性能处理:无限循环
在打造响应式系统时,一个容易遇到的状况是,effect 在执行期间同时“读取”又“写入”同一个依赖,这会造成自我触发 (self-trigger)。 effect 为了读值...
7
1
分享
我是日安
前端
·
7天前
关注
零到一打造 Vue3 响应式系统 Day 16 - 性能处理:LinkPool
昨天,我们完成了“依赖清理”机制,让 effect 能够正确处理动态变化的依赖关系。然而,这也带来了一个新的性能问题:当依赖频繁变化时,系统需要不断地创建和销毁 Link ...
9
评论
分享
我是日安
赞了这篇文章
前端双越老师
www.huashuiAI.com
·
2月前
关注
为何前端圈现在不关注源码了?
大家好,我是双越老师,也是 wangEditor 作者。 大家有没有发现一个现象:最近 1-2 年,前端圈不再关注源码了。源码是一种泡沫,随着招聘市场遇冷,现在泡沫破灭了,...
358
117
分享
我是日安
前端
·
8天前
关注
零到一打造 Vue3 响应式系统 Day 15 - Effect:依赖清理实现方案
在实际情况中,effect 函数内部的依赖,常常因为条件分支(比如 if...else)而发生变化,这种情况称为「动态依赖」。 动态依赖会带来一个问题:在某次执行中不再被使...
3
评论
分享
我是日安
前端
·
9天前
关注
零到一打造 Vue3 响应式系统 Day 14 - Effect:依赖清理的场景
在解决了链表节点指数增长的问题后,我们还需要关注依赖的有效性。 effect 的执行路径可能因为条件判断或程序逻辑不同而改变,导致某些依赖在本次执行中已经不再需要。 如果这...
6
1
分享
我是日安
前端
·
10天前
关注
零到一打造 Vue3 响应式系统 Day 13 - Effect:多重依赖之节点复用解决方案
昨天我们了解到,当 effect 函数依赖多个响应式变量时,会再次触发指数级更新。 我们来回顾一下之前的做法: run() 函数首先会将 depsTail 设为 undef...
3
1
分享
我是日安
前端
·
11天前
关注
从零到一打造 Vue3 响应式系统 Day 12 - Effect :多重依赖之指数触发重现
昨天我们解决了单一依赖所导致的指数增长问题。然而,在真实的开发场景中,一个 effect 函数往往需要依赖多个响应式变量。现在我们试着新增多个依赖,在示例中加入第二个响应式...
4
1
分享
我是日安
前端
·
12天前
关注
从零到一打造 Vue3 响应式系统 Day 11 - Effect:Link 节点的复用实现
昨天我们发现了 Effect 的问题:当 effect 被重复触发时,它会不断地重新收集依赖,导致依赖链表指数级增长。 要让 effect 记住它“订阅过谁”,最直接的方法...
5
3
分享
我是日安
前端
·
13天前
关注
从零到一打造 Vue3 响应式系统 Day 10 - 为何 Effect 会被指数级触发?
DOM 交互 我们的响应式系统经过前几天的努力,已经初具雏形,感觉可以加入一些 DOM 交互,来进行简单的测试。 我们预期每次点击按钮,effect 只会执行一次。但实际情...
3
评论
分享
我是日安
前端
·
14天前
关注
从零到一打造 Vue3 响应式系统 Day 9 - Effect:调度器实现与应用
到目前为止,我们的 effect 会在依赖的数据发生变化时,立即重新执行。 这种简单直接的模式在很多情况下都有效,但当遇到密集且连续的数据变更时,它可能会引发不必要的性能问...
7
2
分享
我是日安
前端
·
15天前
关注
从零到一打造 Vue3 响应式系统 Day 8 - Effect:深入剖析嵌套 effect
今天我们来探讨一个棘手的边界情况:嵌套 effect。 当一个 effect 内部又定义了另一个 effect 时,我们的系统会如何运作呢? 在这种情况下,我们预期内外层都...
8
4
分享
我是日安
前端
·
16天前
关注
从零到一打造 Vue3 响应式系统 Day 7 - 关注点分离:拆分 track、trigger
我们的代码虽然已经可以运作,但 RefImpl 这个类同时处理了数据存储和链表管理,不易于扩展,所以需要调整代码结构。尽管前几章的代码已经能正常工作,但它存在一个很大的问题...
11
9
分享
我是日安
前端
·
17天前
关注
从零到一打造 Vue3 响应式系统 Day 6 - 响应式核心:链表实装应用
昨天,我们了解了链表的核心概念,现在要把这些概念结合起来。 首先让我们从一个常见的场景开始:当一个响应式数据 (ref) 同时被多个 effect 依赖时,会发生什么? 我...
16
7
分享
我是日安
前端
·
18天前
关注
从零到一打造 Vue3 响应式系统 Day 5 - 核心概念:单向链表、双向链表
在昨天,我们建立了响应式的基本运作模式。在继续深入之前,要先了解 Vue 内部用来优化性能的一个核心概念:数据结构。Vue 3 的响应式系统之所以效率高,其内部对数据结构的...
9
3
分享
下一页
个人成就
文章被点赞
176
文章被阅读
6,795
掘力值
886
关注了
9
关注者
105
收藏集
5
关注标签
4
加入于
2024-11-22