An open API service indexing awesome lists of open source software.

https://github.com/cloudhao1999/guide-mini-vue

手把手带你构建自己的 Vue3,只有手写一遍,才能真正的掌握源码!!!实现 Vue3 中的核心三大模块:reactivity 响应式、runtime 运行时、compiler 编译
https://github.com/cloudhao1999/guide-mini-vue

mini-vue vue3

Last synced: over 1 year ago
JSON representation

手把手带你构建自己的 Vue3,只有手写一遍,才能真正的掌握源码!!!实现 Vue3 中的核心三大模块:reactivity 响应式、runtime 运行时、compiler 编译

Awesome Lists containing this project

README

          

### mini-vue 介绍

> 手把手带你构建自己的 Vue3,只有手写一遍,才能真正的掌握源码!!!实现 Vue3 中的核心三大模块:reactivity 响应式、runtime 运行时、compiler 编译

### 当前进度

- [x] 01-Vue3 源码结构的介绍

- [x] 02-reactivity 的核心流程

- [x] 03-runtime-core 初始化的核心流程

- [x] 04-runtime-core 更新的核心流程

- [x] 05-setup 环境:集成 jest & ts

- [x] 06-实现 effect & reactive 依赖收集&触发依赖

- [x] 07-实现 effect 返回 runner

- [x] 08-实现 effect 的scheduler 功能

- [x] 09-实现 effect 的 stop 功能

- [x] 10-实现 readonly 功能

- [x] 11-实现 isReactive 和 isReadonly

- [x] 12-优化 stop 功能

- [x] 13-实现 reactive 和 readonly 嵌套对象转换功能

- [x] 14-实现 shallowReadonly 功能

- [x] 15-实现 isProxy 功能

- [x] 16-实现 ref 功能

- [x] 17-实现 isRef 和 unRef 功能

- [x] 18-实现 proxyRefs 功能

- [x] 19-实现 computed 计算属性

- [x] 20-实现初始化 component 主流程

- [x] 21-使用 rollup 打包库

- [x] 22-实现初始化 element 主流程

- [x] 23-实现组件代理对象

- [x] 24-实现 shapeFlags

- [x] 25-实现注册事件功能

- [x] 26-实现组件 props 功能

- [x] 27-实现组件 emit 功能

- [x] 28-实现组件 slots 功能

- [x] 29-实现 Fragment 和 Text 类型节点

- [x] 30-实现 getCurrentInstance

- [x] 31-实现provide-inject 功能

- [x] 32-实现自定义渲染器 custom renderer

- [x] 33-更新element流程搭建

- [x] 34-更新element 的 props

- [x] 35-更新 element 的 children

- [x] 36-更新 element 的 children - 双端对比diff 算法 (1)

- [x] 37-更新 element 的 children - 双端对比diff 算法 (2)

- [x] 38-更新 element 的 children - 双端对比diff 算法 (3)

- [x] 39-学习尤大解决bug的处理方式

- [x] 40-实现组件更新功能

- [x] 41-实现 nextTick 功能

- [x] 42-编译模块概述

- [x] 43-实现解析插值功能

- [x] 44-实现解析 element

- [x] 45-实现解析 text 功能

- [x] 46-实现解析三种联合类型

- [x] 47-parse 的实现原理

- [x] 48-实现 transform 功能

- [x] 49-实现代码生成 string 类型

- [x] 50-实现代码生成插值类型

- [x] 51-实现代码生成三种联合类型

- [x] 52-实现编译 template 成 render 函数

- [x] 53-实现 monorepo

- [x] 54-实现 watchEffect

### 课程地址

[Vue3 源码实战课 (cuixueshe.com)](https://learn.cuixueshe.com/p/t_pc/course_pc_detail/column/p_61fb595ce4b0beaee4275e1e)