Vite 支持多种前端框架,包括 Vue、React、Svelte、Solid 等。以下是 Vite 与不同框架的集成方法:
Vue 集成:
- 创建 Vue 项目:
bashnpm create vite@latest my-vue-app -- --template vue
- 配置文件:
javascript// vite.config.js import { defineConfig } from 'vite' import vue from '@vitejs/plugin-vue' export default defineConfig({ plugins: [vue()] })
- 支持 JSX:
javascriptimport vueJsx from '@vitejs/plugin-vue-jsx' export default defineConfig({ plugins: [vue(), vueJsx()] })
React 集成:
- 创建 React 项目:
bashnpm create vite@latest my-react-app -- --template react
- 配置文件:
javascript// vite.config.js import { defineConfig } from 'vite' import react from '@vitejs/plugin-react' export default defineConfig({ plugins: [react()] })
- Fast Refresh:Vite 的 React 插件自动支持 Fast Refresh
Svelte 集成:
- 创建 Svelte 项目:
bashnpm create vite@latest my-svelte-app -- --template svelte
- 配置文件:
javascript// vite.config.js import { defineConfig } from 'vite' import { svelte } from '@sveltejs/vite-plugin-svelte' export default defineConfig({ plugins: [svelte()] })
Solid 集成:
- 创建 Solid 项目:
bashnpm create vite@latest my-solid-app -- --template solid
- 配置文件:
javascript// vite.config.js import { defineConfig } from 'vite' import solid from 'vite-plugin-solid' export default defineConfig({ plugins: [solid()] })
通用配置:
路径别名:
javascriptimport path from 'path' export default defineConfig({ resolve: { alias: { '@': path.resolve(__dirname, './src') } } })
环境变量:
javascriptexport default defineConfig(({ mode }) => { return { define: { __APP_ENV__: JSON.stringify(mode) } } })
CSS 预处理器:
javascriptexport default defineConfig({ css: { preprocessorOptions: { scss: { additionalData: `$injectedColor: orange;` } } } })
最佳实践:
- 使用官方模板创建项目,确保最佳配置
- 根据框架特性选择合适的插件
- 合理配置路径别名,简化导入
- 利用环境变量管理不同环境配置
- 使用框架特定的优化插件
框架特定优化:
- Vue:使用
@vitejs/plugin-vue的script选项优化 - React:配置
@vitejs/plugin-react的jsxImportSource - Svelte:配置
@sveltejs/vite-plugin-svelte的preprocess - Solid:使用
vite-plugin-solid的solid选项