64 lines
1.5 KiB
TypeScript

import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import { resolve } from 'path'
import { fileURLToPath, URL } from 'node:url'
import Icons from 'unplugin-icons/vite'
import IconsResolver from 'unplugin-icons/resolver'
import Components from 'unplugin-vue-components/vite'
export default defineConfig({
plugins: [
vue(),
Icons({
autoInstall: true,
compiler: 'vue3'
}),
Components({
resolvers: [
IconsResolver({
prefix: 'i',
enabledCollections: ['tabler']
}),
],
}),
],
resolve: {
alias: {
'@': fileURLToPath(new URL('./src', import.meta.url))
}
},
server: {
host: '0.0.0.0',
port: 3002,
strictPort: true,
open: false,
cors: true,
allowedHosts: ['code.jingrow.com'],
proxy: {
'/api/action': {
target: process.env.VITE_JINGROW_SERVER_URL || 'http://192.168.2.58',
changeOrigin: true,
secure: false
},
'/api/data': {
target: process.env.VITE_BACKEND_SERVER_URL || 'http://localhost:9001',
changeOrigin: true,
secure: false
},
'/jingrow': {
target: process.env.VITE_BACKEND_SERVER_URL || 'http://localhost:9001',
changeOrigin: true,
secure: false
}
}
},
build: {
outDir: 'dist',
assetsDir: 'assets'
},
define: {
// 确保环境变量在构建时可用
__APP_VERSION__: JSON.stringify(process.env.npm_package_version)
}
})