tiny-vue
tiny-vue copied to clipboard
vue3 的简单实现,学习参考 mini-vue
目前已实现功能:
- [x] effect、reactive、依赖收集、依赖触发
- [x] effect 的 scheduler 功能
- [x] readonly 功能
- [x] isReactive、isReadonly 工具函数
- [x] stop 功能
- [x] reactive、readonly 的对象嵌套
- [x] shallowReadonly 功能
- [x] isProxy 工具函数
- [x] ref 功能
- [x] isRef、unRef 工具函数
- [x] proxyRefs 功能
- [x] computed 计算属性
- [x] component 初始化的主流程
- [x] rollup 打包配置
- [x] 初始化 element 流程
- [x] 组件代理对象
- [x] shapeFlags
- [x] 事件注册
- [x] 组件 props 逻辑
- [x] 组件 emit 逻辑
- [x] 组件 slot 逻辑
- [x] getCurrentInstance 功能
- [x] provide/inject 功能
- [x] createRenderer 功能
- [x] element 更新流程
- [x] 更新 element 的 props
- [x] children 的更新及 diff 算法
- [x] 组件的更新功能
- [x] nextTick 功能
- [x] 解析插值功能
- [x] 解析 element 功能
- [x] 解析 text 功能
- [x] 解析三种联合类型
- [x] transform 功能
- [x] 代码生成 string 类型
- [x] 代码生成插值类型
- [x] 代码生成三种联合类型
- [x] 编译 template 成 render 函数
- [x] 实现 watchEffect 方法
- [x] 升级 monorepo 架构,替换 vitest
目前已编写的文档:
- [x] reactive、ref、effect 的流程解析 掘金传送门