4 Commits

Author SHA1 Message Date
dj
72a4bec26a docs(examples): 添加响应性示例并更新reactive示例
- 在reactive.html中添加解构赋值示例,展示如何从响应式对象中提取属性
- 添加console.log调试信息以便更好地理解响应式行为
- 新增ref.html文件,提供另一个响应性相关的示例
- 更新示例代码以更好地演示Vue 3的响应性系统
2026-02-05 17:26:17 +08:00
dj
0850e05bd1 feat(effects): 实现响应式依赖收集和触发机制
- 创建targetMap WeakMap用于存储响应式对象及其依赖映射关系
- 实现track函数用于收集依赖并建立target-key-effect的映射
- 实现trigger函数用于触发指定key的依赖更新
- 在track中通过activeEffect判断是否需要收集依赖
- 添加详细的JSDoc注释说明参数和功能
- 示例页面中添加定时器验证响应式更新效果
2026-02-04 22:19:55 +08:00
dj
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