littlebot
Published on 2025-04-13 / 2 Visits
0

【源码】基于Vue.js框架的minivue学习项目

项目简介

本项目实现了最简的Vue 3模型,从Vue 3源码中剥离出最核心的逻辑,去除处理边缘情况和兼容处理的逻辑,帮助开发者深入学习Vue 3,更轻松理解其核心逻辑。

项目的主要特性和功能

核心功能

  • runtime-core:支持组件、元素、Text类型节点,可初始化props,能在setup中获取props和context,支持组件emit、proxy、provide/inject、基础slots等,实现了nextTick、getCurrentInstance、watchEffect,支持$el api。
  • reactivity:实现了reactive、ref、readonly、computed,完成依赖收集和触发,支持isReactive、嵌套reactive、toRaw等多种功能。
  • compiler-core:能解析插值、element和text。
  • runtime-dom:支持自定义渲染器。
  • infrastructure:支持使用pnpm的monorepo。

待实现功能

实现runtime-test以测试runtime-core的逻辑。

安装使用步骤

前提条件

假设用户已经下载了本项目的源码文件,且已安装pnpm。

安装依赖

在项目根目录下,执行以下命令安装依赖: shell pnpm install

构建项目

执行以下命令进行项目构建: shell pnpm build

运行示例

通过server的方式打开packages/vue/example/*下的index.html,推荐使用Live Server

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】