Commit Graph

9 Commits

Author SHA1 Message Date
dj
a3a7b8c7e4 feat(runtime): 添加 h 函数和虚拟节点系统
- 实现了 h 函数用于创建虚拟节点
- 添加了 VNode 接口定义和创建逻辑
- 引入了 ShapeFlags 枚举来标记节点类型
- 实现了虚拟节点子元素标准化功能
- 在 runtime-core 中导出 h 函数
- 添加了 h 函数使用示例页面
2026-02-26 22:35:22 +08:00
dj
b9a9c52333 feat(watch): 实现watch功能并完善响应式系统
- 新增apiWatch.ts实现watch功能,支持immediate和deep选项
- 扩展ReactiveEffect类添加stop方法用于停止监听
- 导出ReactiveEffect和isReactive函数供外部使用
- 添加ReactiveFlags枚举和IS_REACTIVE标识符
- 在reactive对象上添加__v_isReactive标识
- 导出EMPTY_OBJ常量用于默认参数
- 添加watch功能到Vue入口文件
- 创建watch.html示例验证监听功能正常工作
2026-02-25 22:15:42 +08:00
dj
1f50ab1c84 feat(effects): 添加 scheduler 选项支持和 extend 工具函数
- 添加 extend 函数作为 Object.assign 的别名
- 修复 ReactiveEffectOptions 中 scheduler 属性拼写错误
- 实现 effect 选项配置的属性扩展功能
- 更新 lazy 示例展示 effect 运行逻辑
- 新增 scheduler 示例演示调度器功能
2026-02-10 17:54:23 +08:00
dj
4c60486511 feat(computed): 添加计算属性功能实现
- 实现了 ComputedRefImpl 类来管理计算属性
- 添加了 computed 函数用于创建计算属性
- 在 ReactiveEffect 中添加 computed 属性引用
- 将 computed 导出到 reactivity 和 vue 主包
- 添加了 isFunction 工具函数判断函数类型
- 创建了计算属性的 HTML 示例文件进行演示
2026-02-08 15:19:49 +08:00
dj
2ed86a03b5 refactor(vue): 构建ref简单数据类型的响应性 2026-02-05 23:38:51 +08:00
dj
6b7b452a56 feat(ref): 实现 ref 值变化检测和依赖触发功能
- 在 shared 包中新增 hasChanged 函数用于比较值是否发生变化
- 修改 RefImpl 类添加 _rawValue 属性存储原始值
- 实现 ref setter 中的值变化检测逻辑
- 添加 triggerRefValue 函数用于触发 ref 依赖更新
- 优化 ref 的 getter 和 setter 方法实现响应式更新
2026-02-05 22:36:15 +08:00
dj
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
dj
d4684f288e build: 集成 Rollup 构建工具并配置相关插件 2026-02-02 21:10:02 +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