2026-07-22
更新概览
- React SPA 模板:升级 Vite、Tailwind CSS、Legacy 插件、Less、Immer、Lucide 与模板工具补丁。
- Vue 3 SPA 模板:升级 Vite、Vue、Vue Router、Pinia 4、Tailwind CSS、shadcn-vue 与相关工具链,并补充 Pinia 4 要求的 Vue DevTools API peer。
- React SSR 模板:升级 Tailwind CSS、Sass、Lucide、字体与 shadcn 工具补丁;Next.js、React 与服务端边界保持不变。
- Vue 3 SSR 模板:升级 Nuxt 4.5、Vue、Tailwind CSS、shadcn-vue 与工具补丁;Pinia 4 的 Nuxt 组合因生产 SSR 回归未采用。
- 本次验证:四套模板均通过安装、peer 检查、类型检查、lint、单测、覆盖率、组件测试守卫、生产构建和 Playwright E2E。
React SPA 模板 (vite_react_init)
依赖版本变更
| 依赖 | 旧版本 | 新版本 | 类型 | 影响说明 |
|---|---|---|---|---|
| @fontsource-variable/geist | 5.2.9 | 5.3.0 | minor | Geist 可变字体资源更新。 |
| @tailwindcss/vite | 4.3.2 | 4.3.3 | patch | 与 Tailwind CSS 4.3.3 同步。 |
| autoprefixer | 10.5.3 | 10.5.4 | patch | CSS 后处理补丁更新。 |
| immer | 11.1.11 | 11.1.15 | patch | 不可变状态工具补丁更新。 |
| lucide-react | 1.24.0 | 1.25.0 | minor | 图标库更新,现有按需导入保持兼容。 |
| shadcn | 4.13.0 | 4.13.1 | patch | shadcn CLI 补丁更新。 |
| tailwindcss | 4.3.2 | 4.3.3 | patch | 样式工具补丁更新。 |
| @vitejs/plugin-legacy | 8.2.0 | 8.2.1 | patch | 与 Vite 8.1.5 配套更新。 |
| less | 4.6.7 | 4.7.0 | minor | Less 编译器更新,Node 要求仍兼容模板基线。 |
| vite | 8.1.4 | 8.1.5 | patch | Vite 8 构建补丁更新。 |
升级内容说明
- Vite 8.1.5 仍要求 Node
^20.19.0 || >=22.12.0,与模板 engines 完全一致。 - React、React DOM、React Router DOM、TypeScript、Zustand 与 Axios 本次保持不变。
- Vite 8.1.5 的
@vitejs/devtoolspeer 仍为^0.3.0,因此继续使用 DevTools 0.3.4,不采用 0.4.2。
模板影响
package.json、pnpm-lock.yaml、README 与 AGENTS 版本基线已同步。- 路由、状态、API 与 UI 源码无需迁移。
Vue 3 SPA 模板 (vite_vue3_init)
依赖版本变更
| 依赖 | 旧版本 | 新版本 | 类型 | 影响说明 |
|---|---|---|---|---|
| @fontsource-variable/geist | 5.2.9 | 5.3.0 | minor | Geist 可变字体资源更新。 |
| @lucide/vue | 1.24.0 | 1.25.0 | minor | Vue 图标库更新。 |
| @tailwindcss/vite | 4.3.2 | 4.3.3 | patch | 与 Tailwind CSS 4.3.3 同步。 |
| @vue/devtools-api | 未直接声明 | 8.1.5 | tooling | Pinia 4 官方要求与 Pinia 一同安装的 peer。 |
| pinia | 3.0.4 | 4.0.2 | major | 切换到 ESM-only Pinia 4,并采用新版诊断与 DevTools API。 |
| tailwindcss | 4.3.2 | 4.3.3 | patch | 样式工具补丁更新。 |
| vue | 3.5.39 | 3.5.40 | patch | Vue 运行时与编译器补丁更新。 |
| vue-router | 5.1.0 | 5.2.0 | minor | 新版本 peer 同时支持 Pinia 3 与 Pinia 4。 |
| autoprefixer | 10.5.3 | 10.5.4 | patch | CSS 后处理补丁更新。 |
| @vitejs/plugin-legacy | 8.2.0 | 8.2.1 | patch | 与 Vite 8.1.5 配套更新。 |
| shadcn-vue | 2.7.4 | 2.8.0 | minor | 组件生成工具更新,已有源码组件不被重写。 |
| vite | 8.1.4 | 8.1.5 | patch | Vite 8 构建补丁更新。 |
升级内容说明
- Pinia 4 的官方发布说明将破坏性变化限定为 ESM-only 与 DevTools API v8;模板本身已使用 ESM,补充
@vue/devtools-api后 peer 检查通过。 pinia-plugin-persistedstate4.7.1 声明支持pinia >=3.0.0,现有持久化配置、单测与 E2E 无需改造。- Vite DevTools 继续使用 0.3.4,以满足 Vite 8.1.5 的 peer 范围。
模板影响
package.json、pnpm-lock.yaml、README 与 AGENTS 版本基线已同步。- Pinia 状态注册、Vue Router 路由聚合与客户端 hydration 均通过现有测试。
React SSR 模板 (vite_react_ssr_init)
依赖版本变更
| 依赖 | 旧版本 | 新版本 | 类型 | 影响说明 |
|---|---|---|---|---|
| @fontsource-variable/geist | 5.2.9 | 5.3.0 | minor | Geist 可变字体资源更新。 |
| @tailwindcss/postcss | 4.3.2 | 4.3.3 | patch | 与 Tailwind CSS 4.3.3 同步。 |
| lucide-react | 1.24.0 | 1.25.0 | minor | 图标库更新。 |
| shadcn | 4.13.0 | 4.13.1 | patch | shadcn CLI 补丁更新。 |
| tailwindcss | 4.3.2 | 4.3.3 | patch | 样式工具补丁更新。 |
| sass | 1.101.0 | 1.101.3 | patch | Sass 编译器补丁更新。 |
升级内容说明
- Next.js 16.2.10、React 19.2.7、TypeScript 6.0.3、Zustand 5.0.14 与 ESLint 9.39.5 保持不变。
- Server Component 仍为默认边界;浏览器 API 只在客户端组件中执行,特权请求与密钥相关代码继续留在
src/server。 radix-ui1.6.4 未采用:pnpm 检测到相对旧版本的发布者信任证据降级并阻止安装,模板继续使用 1.6.2。
模板影响
package.json、pnpm-lock.yaml与 README 版本基线已同步。- 生产 Next.js 构建、服务端启动、首屏 SSR 与 hydration E2E 均通过。
Vue 3 SSR 模板 (vite_vue3_ssr_init)
依赖版本变更
| 依赖 | 旧版本 | 新版本 | 类型 | 影响说明 |
|---|---|---|---|---|
| @fontsource-variable/geist | 5.2.9 | 5.3.0 | minor | Geist 可变字体资源更新。 |
| @lucide/vue | 1.24.0 | 1.25.0 | minor | Vue 图标库更新。 |
| @tailwindcss/vite | 4.3.2 | 4.3.3 | patch | 与 Tailwind CSS 4.3.3 同步。 |
| nuxt | 4.4.8 | 4.5.0 | minor | Nuxt、Nitro、Vite 与 Vue Router 运行链更新。 |
| shadcn-vue | 2.7.4 | 2.8.0 | minor | 组件生成工具更新,已有源码组件不被重写。 |
| tailwindcss | 4.3.2 | 4.3.3 | patch | 样式工具补丁更新。 |
| vue | 3.5.39 | 3.5.40 | patch | Vue 运行时与编译器补丁更新。 |
| @typescript-eslint/parser | 8.64.0 | 8.65.0 | minor | ESLint TypeScript 解析器更新。 |
| sass | 1.101.0 | 1.101.3 | patch | Sass 编译器补丁更新。 |
| Node engines | ^22.12.0 || ^24.11.0 || >=26.0.0 | ^22.19.0 || ^24.11.0 || >=26.0.0 | toolchain | 对齐 Nuxt 4.5.0 官方 Node 要求。 |
升级内容说明
- Pinia 4.0.2 与
@pinia/nuxt1.0.1 曾作为配套候选安装,单测、类型检查和构建均通过,但生产 E2E 在app:rendered状态序列化阶段触发 500;最终保留 Pinia 3.0.4 与@pinia/nuxt0.11.3。 - Nuxt 4.5.0、Pinia 3 与
@pinia/nuxt0.11.3 的最终组合通过 peer 检查、生产 SSR 与 hydration E2E。 - 浏览器行为继续放在
.client插件、onMounted或import.meta.client保护中,服务端能力继续留在src/server。
模板影响
package.json、pnpm-lock.yaml、README 与 cwa-docs 的 Node/生态基线已同步。- Nuxt 4.5 将 Node 22 分支最低版本提高到 22.19.0,使用 Node 22 的项目需要同步升级运行时。
文档与锁文件
- 四套模板均使用 pnpm 11.10.0 增量更新
pnpm-lock.yaml,未删除或整体重建锁文件。 create-wl-app保持 1.0.8;四个模板标识、仓库映射与交互分组无需修改。- README、AGENTS、Vue 长期模板文档与 SSR Node 要求均按最终版本同步;更新日志由文档站自动发现,并补充标题映射。
cwa-docs已通过npm run build,新日志和长期文档可被生产构建加载。
验证结果
| 模板 | 单测 | 覆盖率 statements | 组件守卫 | E2E | 其他门禁 |
|---|---|---|---|---|---|
| React SPA | 15 files / 40 tests | 79.52% | 19 components | 3 passed | install、peers、typecheck、lint、build 通过 |
| Vue 3 SPA | 14 files / 29 tests | 79.22% | 19 components | 3 passed | install、peers、typecheck、lint、build 通过 |
| React SSR | 11 files / 17 tests | 93.97% | 13 components | 3 passed | install、peers、typecheck、lint、Next build 通过 |
| Vue 3 SSR | 8 files / 13 tests | 93.33% | 27 components | 3 passed | install、peers、typecheck、lint、Nuxt build 通过 |
注意事项
- TypeScript 7.0.2 未采用:typescript-eslint 8.65.0 的 TypeScript peer 上限仍为
<6.1.0。 @testing-library/jest-dom7 与@eslint-react/eslint-plugin5.17.3 未采用:它们要求 Node >=22,不能满足两套 SPA 的 Node 20 支持基线。- lint-staged 17.1.0 未采用:它要求 Node >=22.22.1,高于 SPA 与 SSR 模板声明的最低版本。
- code-inspector-plugin 2 未采用:仍会引入需要构建许可的依赖链,模板保留 1.x 兼容线。
- pnpm 11.15.1 未采用:它要求 Node >=22.13,无法覆盖 SPA 模板的 Node 20 基线。
- 本地 Node 24.1.0 不满足 SSR 模板声明的
^24.11.0,SSR 命令会显示 engine warning;所有最终门禁仍实际完成并通过。 - React SSR 与 Vue SSR lint 仍有既有 Tailwind 任意值简化建议;Nuxt 构建会输出插件耗时提示,均不阻塞模板运行。
cwa-docs构建仍提示主 JavaScript chunk 约 613 kB,属于既有站点拆包优化项,不阻塞本次文档发布。
