Vue 2 仓库,现在是遗留源码树
vuejs/vue 是 Vue 2 的源码仓库。这句话比 star 数更重要。README 现在开头就是 end-of-life notice:Vue 已在 2023-12-31 EOL,不再接收新功能、更新或修复。最新版 Vue 的活跃维护仓库是 vuejs/core。
这个仓库仍然有历史价值。Vue 2 影响了多年 frontend 开发:好上手的模板、single-file components、平缓学习曲线、灵活生态,以及很多生产应用仍在携带的运行时。但 2026 年搜索到这里,正确问题已经不是“新项目该不该用它”,而是“现有 Vue 2 代码该怎么处理”。
所以这页不是普通框架介绍。vuejs/vue 现在的价值是源码阅读、迁移规划、bug 考古和遗留维护。如果你要创建新应用,答案更简单:从 Vue 3 开始。
仓库里有什么
Vue 2 是用于构建用户界面的 progressive framework。仓库包含 runtime core、compiler、浏览器平台代码、server-side renderer、single-file component parser、共享工具、类型声明、测试、构建脚本和 dist build 配置。
贡献指南把结构讲得很清楚。src/core 是平台无关的运行时代码,包括 observer、virtual DOM、instance methods、global API 和抽象组件。src/compiler 负责把模板转成 render functions,过程包括 parsing、optimization 和 code generation。src/platforms 注入浏览器相关 runtime 和 compiler 行为。src/server 处理 SSR。src/sfc 解析 Vue single-file components。packages 里有 Vue 2 的 vue-server-renderer、vue-template-compiler,以及 2.7 line 引入的 compiler SFC 部分。
这套结构对调试 Vue 2 应用很有用。遇到 reactivity、slots、compiler output、SSR、browser patching 或 type declarations 相关问题时,它能告诉你该从哪里读。
EOL 改变了决策
截至 2026-06,本地快照显示它超过 209,000 stars,超过 33,000 forks。这些数字反映 Vue 2 的历史影响力,不代表当前产品方向。仓库没有 archived,EOL notice 之后也有 push,包括拼写和坏链修复。但 README 已经明确维护边界:没有新功能、更新或修复。
GitHub 上可见的最后 release 是 v2.7.16,发布于 2023-12-24,名称是 “Swan Song”。这个名字已经很直白。Vue 2.7 是带有 Composition API 和 TypeScript 相关工作的桥接版本,但它仍然是 Vue 2 line 的终点。
对团队来说,含义很实际。如果应用还在活跃开发,就该制定迁移计划。如果应用稳定但有 compliance 或 security 要求,README 指向 HeroDevs 的商业 Vue 2 NES 支持。如果应用只是内部低风险系统,并且接近退役,合理决策可能是收束:锁定依赖,记录风险,减少暴露面,避免继续堆新功能。
怎么读源码
这里没有必要编安装命令。贡献指南给出开发设置:Node.js 18+、pnpm 8+,然后安装依赖并使用已有 scripts。常用脚本覆盖 development builds、unit tests、E2E tests、SSR tests、SFC tests、type checks 和 full builds。默认 test script 会跑 type checking、type tests、unit tests、E2E tests、SSR tests 和 SFC tests。
读源码时,按子系统入口走:
- Reactivity 和 instance behavior:
src/core - Template compilation:
src/compiler - 浏览器 runtime 行为:
src/platforms/web - Server-side rendering:
src/server - Single-file component parsing:
src/sfc - Public type declarations:
types
维护应用时,先读 migration guide,不要直接在 open issues 里找答案。issue 区混有老 Vue 2 报告、EOL 后的 feature requests、噪音请求和真实遗留痛点。2024 年有成员回复得很直接:Vue 2 is no longer being maintained。
Vue 2 和活跃框架仓库怎么比较
| 仓库 | Stars | 状态 | 适合场景 |
|---|---|---|---|
| vuejs/vue | 209,845 | Vue 2, EOL | 维护或研究现有 Vue 2 应用 |
| vuejs/core | 53,804 | 活跃 Vue 3 core | 开始新的 Vue 工作或迁移现代应用 |
| react/react | 245,757 | 活跃 UI library | 需要 React 生态和 UI primitives |
| angular/angular | 100,316 | 活跃 full framework | 需要 opinionated TypeScript application platform |
| sveltejs/svelte | 87,167 | 活跃 compiler-centered framework | 想采用 Svelte 的 compile-time model |
数字来自 2026-06 的 GitHub 快照。这个比较不是让 Vue 2 参与新项目选择。它已经退出这场竞赛。真正的问题是:现有代码要迁到哪里,或者今天从零开始会选择哪个活跃框架。
Vue 2 源码仍然值得读的地方
源码本身仍是有用资料。Vue 2 的 observer-based reactivity、virtual DOM patching、template compiler、slot behavior、component lifecycle 和 SFC tooling 仍值得理解,因为很多生产应用还依赖它们。读这个仓库可以解释遗留应用为什么会有某些行为。
它也能帮助迁移。知道旧代码具体做了什么,迁到 Vue 3 概念时会更稳。Vue 2.7 的类型和 compiler 问题,也能解释一些代码库在渐进 TypeScript 或 Vite 迁移时为什么会卡住。
不该做什么
不要用 Vue 2 开新项目。不要把 open issues 当成未来修复承诺。不要因为 star 数很高就假设它仍在活跃维护。除非组织明确接受风险,否则不要在 EOL framework 上继续规划长期路线。
也不要把 npm 上还能下载理解为有支持。README 说 Vue 2 仍可通过已有 distribution channels 获取,包括 CDNs、package managers 和 GitHub。能下载不等于被维护。
相关
本站已有活跃 React 源码页:react/react。如果想看单一框架之外的 frontend 学习路线,nilbuild/developer-roadmap 更适合。选好技术栈之后做 JavaScript 和 TypeScript 项目练习,可以看 practical-tutorials/project-based-learning。
FAQ
vuejs/vue 还在维护吗? 正常产品意义上不再维护。Vue 2 已在 2023-12-31 EOL。README 明确说它不再接收新功能、更新或修复。
Vue 3 在哪里开发? Vue 3 在 vuejs/core 开发。Vue 2 README 也把它标为最新版 Vue 的活跃维护仓库。
新项目应该用 Vue 2 吗? 不应该。除非有非常特殊的遗留约束,新项目应使用 Vue 3。
最后一个 Vue 2 release 是什么? GitHub 上最新 release 是 v2.7.16,发布于 2023-12-24,名称是 “Swan Song”。
还停在 Vue 2 的团队该怎么办? 能迁移就制定迁移计划。如果 compliance 或 security 要求不允许使用未维护软件,可以评估 README 里提到的 Vue 2 NES 这类支持选项。