This commit is contained in:
Eric
2026-02-09 11:24:51 +08:00
commit f2173a9fa9
491 changed files with 43791 additions and 0 deletions

View File

@@ -0,0 +1,85 @@
import { defineConfig, loadEnv } from 'vite'
import vue from '@vitejs/plugin-vue'
import { resolve } from 'path'
// https://vitejs.dev/config/
export default defineConfig(({ mode }) => {
// 加载环境变量
const env = loadEnv(mode, process.cwd(), '')
// 定义基础 URL支持环境变量
const baseUrl = env.VITE_API_BASE_URL || 'http://localhost:10001'
const apiPrefix = env.VITE_API_PREFIX || '/demo-api'
return {
plugins: [vue()],
// 基础路径
base: env.VITE_BASE_PATH || '/',
// 解析配置
resolve: {
alias: {
'@': resolve(__dirname, 'src'),
},
extensions: ['.js', '.ts', '.jsx', '.tsx', '.vue', '.json']
},
// 开发服务器配置
server: {
port: 9506,
host: true, // 监听所有地址
open: true, // 自动打开浏览器
cors: true, // 启用 CORS
// 代理配置
proxy: {
// API 代理(修正了 rewrite 路径)
[apiPrefix]: {
target: baseUrl,
changeOrigin: true,
rewrite: (path) => path.replace(new RegExp(`^${apiPrefix}`), '')
},
// WebSocket 代理(如果需要)
'/ws': {
target: baseUrl.replace('http', 'ws'),
ws: true,
changeOrigin: true
}
}
},
// 构建配置
build: {
outDir: 'dist',
sourcemap: mode !== 'production',
chunkSizeWarningLimit: 1600,
rollupOptions: {
output: {
manualChunks: {
vue: ['vue', 'vue-router', 'vuex/pinia'],
vendor: ['axios', 'lodash', 'dayjs'],
ui: ['element-plus', 'ant-design-vue'] // 根据实际使用的 UI 库调整
}
}
}
},
// 预览配置
preview: {
port: 9507,
host: true,
open: true
},
// CSS 配置
css: {
preprocessorOptions: {
scss: {
additionalData: `@import "@/styles/variables.scss";`
}
}
}
}
})