- 响应式系统:实现了一个基本的响应式系统,支持对象、数组以及原始值的响应式变化,同时提供 computed 和 watch 功能。
- 渲染器:实现了虚拟 DOM 与两种 diff 算法,支持组件的挂载和更新,以及事件处理。
- 编译器:支持模板语法的解析和代码生成,包括自定义指令的解析和渲染。
- TypeScript:采用 TypeScript 进行编写,提供了良好的类型提示和编译时错误检查。
- 测试覆盖率:使用 Vitest 进行单元测试和端到端测试,测试覆盖率达到 90%。
- 构建工具:使用 Rollup 进行项目的打包和构建,区分生产环境和开发环境。
很抱歉暂未发布 NPM Package 🚧(咕咕咕)
项目开发文档请参考: zbwer's Blog | 响应式系统(🚧 施工中...)
本项目是对 Vue.js 的简化版实现,旨在深入理解和探索 Vue.js 的内部工作原理。
在项目的实现过程中,参考了以下资料:
- 《Vue.js 设计与实现》这本书对于理解 Vue.js 的设计思想和实现细节提供了极大的帮助。
- DdBind - 一个简单的 vue-like MVVM 框架,这个开源项目给我提供了一个实际的参考模型。
感激不尽!
TODO:
- 打包类型声明文件
- Github 工作流自动发布 NPM Package