|
|
4225ae0b8f
|
feat(examples): 更新 h-element 示例并添加文本版本
- 将 h-element.html 重命名为 h-element-array.html
- 修改示例代码以展示数组子元素渲染功能
- 添加新的 h-element-text.html 示例文件
- 新示例演示基本文本内容渲染用法
|
2026-02-26 23:41:04 +08:00 |
|
|
|
a3a7b8c7e4
|
feat(runtime): 添加 h 函数和虚拟节点系统
- 实现了 h 函数用于创建虚拟节点
- 添加了 VNode 接口定义和创建逻辑
- 引入了 ShapeFlags 枚举来标记节点类型
- 实现了虚拟节点子元素标准化功能
- 在 runtime-core 中导出 h 函数
- 添加了 h 函数使用示例页面
|
2026-02-26 22:35:22 +08:00 |
|
|
|
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 |
|
|
|
4a71105e28
|
feat(runtime-core): 添加预冲洗回调队列功能
- 在 runtime-core 中新增 queuePreFlushCb 函数用于管理预冲洗回调
- 在 vue 包中导出 queuePreFlushCb 函数供外部使用
- 实现调度器中的回调队列机制,包括队列管理和执行逻辑
- 添加去重逻辑确保回调函数只执行一次
- 新增示例文件展示调度器预冲洗回调的使用方法
|
2026-02-24 22:06:33 +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
|
62e40e7292
|
feat(effects): 添加懒执行选项和调度器支持
- 引入 ReactiveEffectOptions 接口,支持 lazy 和 scheduler 配置
- 实现懒执行功能,当 lazy 为 true 时不立即运行 effect
- 添加新的示例文件 lazy.html 演示懒执行效果
- 优化 effect 函数参数结构,支持可选配置项
|
2026-02-09 18:23:44 +08:00 |
|
|
|
c07431db08
|
feat(computed): 实现计算属性缓存优化和调度器支持
- 添加 _dirty 标志位控制计算属性重新执行逻辑
- 在 ReactiveEffect 构造函数中增加调度器参数支持
- 实现计算属性值变更时的依赖触发机制
- 重构 triggerEffects 函数优先处理计算属性依赖
- 新增 EffectScheduler 类型定义统一调度器类型
- 添加 computed-cache.html 示例验证缓存功能
|
2026-02-08 22:39:34 +08:00 |
|
|
|
4c60486511
|
feat(computed): 添加计算属性功能实现
- 实现了 ComputedRefImpl 类来管理计算属性
- 添加了 computed 函数用于创建计算属性
- 在 ReactiveEffect 中添加 computed 属性引用
- 将 computed 导出到 reactivity 和 vue 主包
- 添加了 isFunction 工具函数判断函数类型
- 创建了计算属性的 HTML 示例文件进行演示
|
2026-02-08 15:19:49 +08:00 |
|
|
|
2ed86a03b5
|
refactor(vue): 构建ref简单数据类型的响应性
|
2026-02-05 23:38:51 +08:00 |
|
|
|
9aad0f6c74
|
Merge remote-tracking branch 'origin/main'
# Conflicts:
# packages/vue/examples/reactivity/ref.html
|
2026-02-05 21:58:25 +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 |
|
dj
|
72a4bec26a
|
docs(examples): 添加响应性示例并更新reactive示例
- 在reactive.html中添加解构赋值示例,展示如何从响应式对象中提取属性
- 添加console.log调试信息以便更好地理解响应式行为
- 新增ref.html文件,提供另一个响应性相关的示例
- 更新示例代码以更好地演示Vue 3的响应性系统
|
2026-02-05 17:26:17 +08:00 |
|
|
|
434bf946c5
|
test(reactivity): 添加响应式测试用例
- 创建 reactive-test.html 测试文件
- 验证 reactive 函数对简单数据类型的处理
- 添加基本的 DOM 结构和 Vue 引入
- 实现简单的响应式对象测试逻辑
|
2026-02-04 23:28:54 +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 |
|
|
|
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 |
|