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-renderervue-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 这类支持选项。