mcpField
V
vite

vite

github.com/oakoss开发21132 次安装12 周前更新
代码仓库

关于 vite

Vite 是面向现代前端项目的构建工具,提供基于原生 ES modules 的开发服务器和 Rollup 生产构建。此技能汇总配置、插件、资源处理与 SSR 等实践,适用于前端开发者。

主要功能

  1. 01快速启动开发服务器
  2. 02基于 Rollup 优化生产构建
  3. 03支持 TypeScript、JSX 与 CSS 预处理器
  4. 04提供插件和虚拟模块机制
  5. 05支持库模式、多页面与 SSR

适用场景

  1. 01搭建单页或多页应用
  2. 02配置 SSR 前端项目
  3. 03构建并发布库
  4. 04管理 monorepo 前端包

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/oakoss/agent-skills --skill vite

安装后在 Claude Code 中输入/vite确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
build-optimization.md
configuration.md
css-and-assets.md
dev-server.md
environment-variables.md
library-mode.md
plugins.md
ssr-configuration.md

详细介绍

Vite

概述

Vite 是新一代前端构建工具,可通过原生 ES 模块即时启动开发服务器,并通过 Rollup 优化生产构建。它开箱即支持 TypeScript、JSX、CSS 预处理器和静态资源,无需配置。

适用场景: 单页应用、多页应用、库发布、SSR 应用、monorepo 包,以及任何需要快速开发反馈和优化构建的现代前端项目。

不适用场景: 需要未经转译即可输出 ES5 的旧版浏览器、被锁定为使用没有 Vite 对应方案的 Webpack 专用 loader 的项目,以及非 JavaScript 构建流程。

快速参考

模式API要点
配置文件defineConfig({})类型安全的配置,支持 IDE
条件配置defineConfig(({ command, mode }) => ({}))按命令/模式使用不同配置
路径别名resolve.alias将 @/ 映射到 src/
开发代理server.proxy将 API 请求转发到后端
HMR 配置server.hmrWebSocket 主机/端口/协议
HTTPS 开发server.https传入 TLS 证书/密钥选项
构建目标build.target输出的 ES 模块目标
手动分块build.rollupOptions.output.manualChunks控制代码拆分
库模式build.lib发布 ES/CJS/UMD 包
SSR 构建build.ssr + ssr 选项服务端渲染配置
环境变量import.meta.env.VITE_*暴露给客户端的环境变量
loadEnvloadEnv(mode, root, prefix)在配置中加载环境变量
CSS 模块css.modules作用域限定的 CSS 类名
预处理器css.preprocessorOptionsSass/Less/Stylus 选项
PostCSScss.postcss内联或外部 PostCSS 配置
静态资源import url from './img.png'返回解析后的公共 URL
插件{ name, transform, load }基于钩子的插件系统
虚拟模块resolveId + load 钩子在构建时生成模块
多页应用build.rollupOptions.input多个 HTML 入口点

常见错误

错误正确做法
通过 VITE_ 前缀暴露机密信息仅为可在客户端安全使用的变量添加 VITE_ 前缀;在配置中使用 loadEnv 处理仅供服务端使用的机密信息
在客户端代码中使用 process.env使用 import.meta.env.VITE_*(Vite 会在构建时替换)
修改 rollupOptions.input 时未使用 resolve()始终使用 path.resolve() 或 import.meta.dirname 获取绝对路径
在库模式下未将 peer 依赖标记为外部依赖将 React/Vue 添加到 rollupOptions.external,以避免打包
在 SSR 中创建 QueryClient 式的单例确保 SSR 中每个请求的状态相互独立,避免请求间数据泄露
同时使用内联 PostCSS 配置和 postcss.config.js二选一;内联配置会禁用配置文件搜索
设置 base 时未添加尾随斜杠base 应设置为带尾随斜杠的 /path/ 或完整 URL
在 ESM 配置中使用 __dirname使用 import.meta.dirname(Node 21+)或 fileURLToPath

委派

  • 插件发现:使用 Explore Agent
  • 构建分析:使用 Task Agent
  • 配置审查:委派给 code-reviewer Agent

如果有 vitest-testing 技能,请将测试配置和 Vitest 设置委派给它。 如果有 tailwind 技能,请将 Tailwind CSS 配置和实用类模式委派给它。 如果有 react-patterns 技能,请将 React 组件模式和 hooks 委派给它。 如果有 typescript-patterns 技能,请将 TypeScript 配置和类型模式委派给它。 如果有 pnpm-workspace 技能,请将 monorepo 工作区配置委派给它。

参考资料

评论

支持 Markdown