一、以 Vue 3.4 版本为例
Vue 的项目存储库采用的是 monorepo 设置,即将多个项目的源代码存储在同一个代码库,并使用 pnpm (是一个 JavaScript 包管理工具) 来管理 monorepo:
代码库:https://github.com/vuejs/core
在 packages 目录下存放了不同的包:
这些包的依赖关系,可以参考官方提供的图例 (https://github.com/vuejs/core/blob/main/.github/contributing.md#package-dependencies):
还有一些私有的包 (packages-private):
Vue 提供许多脚本方便打包构建时使用:
例如编译 reactivity 包,输出在 packages/reactivity/dist 目录下:
npm run build reactivity
如果要调试 Vue Reactivity,则可以使用:
npm run dev reactivity
二、其他
学习的记录,仅供参考