|
|
4c60486511
|
feat(computed): 添加计算属性功能实现
- 实现了 ComputedRefImpl 类来管理计算属性
- 添加了 computed 函数用于创建计算属性
- 在 ReactiveEffect 中添加 computed 属性引用
- 将 computed 导出到 reactivity 和 vue 主包
- 添加了 isFunction 工具函数判断函数类型
- 创建了计算属性的 HTML 示例文件进行演示
|
2026-02-08 15:19:49 +08:00 |
|
|
|
c0853b353d
|
docs(ref): 更新 ref 实现的注释文档
- 为 RefImpl 构造函数添加原始数据注释
- 为 value setter 方法添加详细的参数和逻辑说明
- 为 newValue 和 _rawValue 的比较逻辑添加注释
- 为 value setter 中的数据更新流程添加步骤注释
- 更新 triggerRefValue 函数的注释描述
|
2026-02-05 23:53:27 +08:00 |
|
|
|
6b7b452a56
|
feat(ref): 实现 ref 值变化检测和依赖触发功能
- 在 shared 包中新增 hasChanged 函数用于比较值是否发生变化
- 修改 RefImpl 类添加 _rawValue 属性存储原始值
- 实现 ref setter 中的值变化检测逻辑
- 添加 triggerRefValue 函数用于触发 ref 依赖更新
- 优化 ref 的 getter 和 setter 方法实现响应式更新
|
2026-02-05 22:36:15 +08:00 |
|
|
|
7fc2292d4b
|
feat(core): 添加 ref 响应式引用功能
- 实现了 ref 函数用于创建响应式引用
- 添加了 RefImpl 类来管理引用值的响应式行为
- 集成了 trackRefValue 函数进行依赖追踪
- 扩展了 vue 包的导出以包含 ref 功能
- 在 shared 包中添加了 isObject 工具函数
- 创建了 toReactive 辅助函数用于对象响应式转换
- 新增 ref.html 示例文件展示 ref 使用方法
- 移除了旧的 reactive-test.html 示例文件
|
2026-02-05 21:57:55 +08:00 |
|
|
|
668ecda610
|
refactor(reactivity): 重构响应式系统依赖收集机制
- 将依赖管理逻辑分离到独立的dep模块
- 创建Dep类型定义和createDep工厂函数
- 修改KeyToDepMap类型以使用Dep集合替代单个ReactiveEffect
- 添加trackEffects函数用于统一跟踪依赖
- 实现triggerEffects函数用于批量触发依赖
- 增加triggerEffect函数用于触发单个依赖
- 在effect运行时添加注释说明首次getter触发
- 添加HTML示例文件验证多依赖收集功能
|
2026-02-04 23:25:32 +08:00 |
|
|
|
0850e05bd1
|
feat(effects): 实现响应式依赖收集和触发机制
- 创建targetMap WeakMap用于存储响应式对象及其依赖映射关系
- 实现track函数用于收集依赖并建立target-key-effect的映射
- 实现trigger函数用于触发指定key的依赖更新
- 在track中通过activeEffect判断是否需要收集依赖
- 添加详细的JSDoc注释说明参数和功能
- 示例页面中添加定时器验证响应式更新效果
|
2026-02-04 22:19:55 +08:00 |
|
|
|
5a24b61edf
|
feat(core): 实现响应性系统的核心功能
- 添加 effect 函数用于创建响应性副作用
- 实现 ReactiveEffect 类来管理响应性执行
- 添加 track 函数用于依赖收集
- 添加 trigger 函数用于触发依赖更新
- 在 baseHandlers 中实现 Proxy 的 get 和 set 拦截器
- 将 effect 导出到 vue 包的入口文件
- 添加 dev 脚本用于监听构建
- 更新示例文件展示响应性功能的使用
- 修复 README.md 中代码块格式问题
|
2026-02-03 22:18:21 +08:00 |
|
dj
|
d3fea3f244
|
feat(reactivity): 实现响应式系统基础功能
- 新增 baseHandlers.ts 文件,定义响应性 handler
- 在 reactivity 模块中导出 reactive 函数
- 将 vue 主入口改为导出 reactive,移除测试代码
- 添加 reactive.html 示例文件用于测试响应式功能
- 实现 reactive 函数,支持创建复杂数据类型的响应式对象
- 使用 WeakMap 缓存代理对象,避免重复代理
|
2026-02-03 18:14:33 +08:00 |
|
dj
|
a5bd4d728b
|
chore: 初始化项目基础配置
- 添加 .prettierrc 配置文件,设置代码格式化规则
- 创建各 packages 目录下的 README.md 文档
- 配置 tsconfig.json TypeScript 编译选项
- 设置 rollup.config.js 打包配置
- 添加 .gitignore 忽略文件配置
- 安装 prettier 依赖
|
2026-02-02 18:07:30 +08:00 |
|