根据 Vue 以及B站阿崔cxr的 mini-vue 复刻出来的一个小型的玩具vue框架,以助于自己了解 Vue 原理
大家喜欢的可以来个 Star 关注一下,以后会有更多内容分享
目前进度
-
reactivity 的核心流程
-
runtime-core 初始化的核心流程
-
runtime-core 更新的核心流程
-
setup环境-集成jest做单元测试-集成 ts
-
实现 effect & reactive & 依赖收集 & 触发依赖
-
实现 effect 返回 runner
-
实现 effect 的scheduler 功能
-
实现 effect 的 stop 功能
-
实现 readonly 功能
-
实现 isReactive 和 isReadonly
-
优化 stop 功能
-
实现 reactive 和 readonly 嵌套对象转换功能
-
实现 shallowReadonly 功能
-
实现 isProxy 功能
-
实现 ref 功能
-
实现 isRef 和 unRef 功能
-
实现 proxyRefs 功能
-
实现 computed 计算属性功能
-
实现初始化 component 主流程
-
使用 rollup 打包库
-
实现初始化 element 主流程
-
实现组件代理对象
-
实现 shapeFlags
-
实现注册事件功能
-
实现组件 props 功能
-
实现组件 emit 功能
-
实现组件 slots 功能
-
实现 Fragment 和 Text 类型节点
-
实现 getCurrentInstance
-
实现依赖注入功能(provide/inject)
-
实现自定义渲染器 custom renderer
-
更新element流程搭建
-
更新element 的 props
-
更新 element 的 children array to text
-
更新 element 的 children text to text
-
更新 element 的 children text to array
-
更新 element 的 children - 双端对比diff 算法(1)
-
自动提交代码命令实现(Vue开发时的提交流程简化,命令如下)
yarn release
待完成
- 更新 element 的 children - 双端对比diff 算法 (2)
- 更新 element 的 children - 双端对比diff 算法 (3)
- 学习尤大解决 bug 的处理方式
- 实现组件更新功能
- 实现 nextTick 功能
- 编译模块概述
- 实现解析插值功能
- 实现解析element 标签
如果对我感兴趣的话,你也可以在以下渠道了解一下我