| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- import { defineConfig } from 'vite'
- import vue from '@vitejs/plugin-vue'
- import { resolve } from 'path'
- import pkg from './package.json'
- export default defineConfig({
- plugins: [vue()],
- define: {
- __APP_VERSION__: JSON.stringify(pkg.version)
- },
- resolve: {
- alias: {
- '@': resolve(__dirname, 'src')
- }
- },
- server: {
- host: '0.0.0.0',
- port: 3000,
- open: true,
- proxy: {
- // 后端 API
- '/api': {
- target: 'https://tg-live-game.pwtk.cc',
- changeOrigin: true,
- secure: true
- }
- }
- },
- css: {
- preprocessorOptions: {
- scss: {
- additionalData: `@use "@/assets/styles/variables.scss" as *;`
- }
- }
- },
- build: {
- chunkSizeWarningLimit: 1500,
- rollupOptions: {
- output: {
- manualChunks(id) {
- if (id.includes('node_modules')) {
- // Vue 核心和 Element Plus 放在一起,避免循环依赖
- if (id.includes('vue') || id.includes('@vue') ||
- id.includes('element-plus') || id.includes('@element-plus') ||
- id.includes('pinia') || id.includes('vue-router')) {
- return 'vendor'
- }
- }
- }
- }
- }
- }
- })
|