首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
我是日安
掘友等级
前端
Better late than never.
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
1
文章 1
沸点 0
赞
1
返回
|
搜索文章
最新
热门
从零到一打造 Vue3 响应式系统 Day 23 - Watch:基础实现
watch 是 Vue 中非常重要的一个 API,它允许开发者在响应式数据发生变化时,执行特定的副作用(side effects)。这些副作用可以是异步行为(例如发起请求),也可以是基于状态变化而执行
从零到一打造 Vue3 响应式系统 Day 22 - Computed:缓存机制实现
在上一篇文章中,我们提到将通过「缓存」机制来解决 computed 在访问时重复执行的问题。 在 Vue 3 的源码里,computed 是靠一个「脏值标记(dirty flag)」来判断是否需要重新
从零到一打造 Vue3 响应式系统 Day 21 - Computed:即时更新基础实现
今天我们要在保持既有链表架构不变的前提下,实现 computed 的惰性计算 + 缓存(dirty 旗标)与调度逻辑。 示例演示 先看官方代码的效果: 可以看到控制台会先输出 1,再输出 2,其中的
从零到一打造 Vue3 响应式系统 Day 20 - Reactive:reactive 极端案例
在完成 reactive 的基本实现之后,接下来会遇到几种常见且必须处理的情况: 原始对象传入 Reactive 对象 Reactive 对象再次传入 Reactive 对 Reactive 对象重复
从零到一打造 Vue3 响应式系统 Day 19 - Reactive:reactive 的基础实现
上一次我们提到: 每个对象的每个属性都需要自己的 Dep。 如何建立 target.a → Dep 的对应关系? 如何在不污染原始对象的情况下存储这个关系? 我们可以先来做一个简单的比较。 Ref 与
从零到一打造 Vue3 响应式系统 Day 18 - Reactive:深入 Proxy 的设计思路
在之前的文章中,我们已经完成了 ref 的实现,它能将原始值包装成响应式对象。现在,我们要接着完成响应式系统核心的另一部分:reactive 函数。我们的目标是接收一个完整的对象,并返回一个代理对象,
从零到一打造 Vue3 响应式系统 Day 17 - 性能处理:无限循环
在打造响应式系统时,一个容易遇到的状况是,effect 在执行期间同时“读取”又“写入”同一个依赖,这会造成自我触发 (self-trigger)。 effect 为了读值而被追踪为依赖,但它在同一次
零到一打造 Vue3 响应式系统 Day 16 - 性能处理:LinkPool
昨天,我们完成了“依赖清理”机制,让 effect 能够正确处理动态变化的依赖关系。然而,这也带来了一个新的性能问题:当依赖频繁变化时,系统需要不断地创建和销毁 Link 节点。每次建立依赖关系都会触
零到一打造 Vue3 响应式系统 Day 15 - Effect:依赖清理实现方案
在实际情况中,effect 函数内部的依赖,常常因为条件分支(比如 if...else)而发生变化,这种情况称为「动态依赖」。 动态依赖会带来一个问题:在某次执行中不再被使用的旧依赖,如果没有被处理好
零到一打造 Vue3 响应式系统 Day 14 - Effect:依赖清理的场景
在解决了链表节点指数增长的问题后,我们还需要关注依赖的有效性。 effect 的执行路径可能因为条件判断或程序逻辑不同而改变,导致某些依赖在本次执行中已经不再需要。 如果这些“过期依赖”没有被清理:
下一页
个人成就
文章被点赞
176
文章被阅读
6,808
掘力值
886
关注了
9
关注者
105
收藏集
5
关注标签
4
加入于
2024-11-22