import { fileURLToPath, URL } from 'node:url' import UnoCSS from 'unocss/vite' import { defineConfig } from 'vite' import vue from '@vitejs/plugin-vue' import vueDevTools from 'vite-plugin-vue-devtools' import AutoImport from 'unplugin-auto-import/vite' import Components from 'unplugin-vue-components/vite' import { ElementPlusResolver } from 'unplugin-vue-components/resolvers' import vueJsx from '@vitejs/plugin-vue-jsx' import Icons from 'unplugin-icons/vite' // Vite 配置文件 export default defineConfig({ plugins: [ vue(), vueJsx(), vueDevTools(), UnoCSS(), Icons({ autoInstall: true, }), AutoImport({ imports: ['vue', 'vue-router'], resolvers: [ElementPlusResolver()], dts: 'global.types/auto-imports.d.ts', }), Components({ dirs: ['src/components'], extensions: ['vue'], dts: 'global.types/components.d.ts', resolvers: [ElementPlusResolver()], }), ], resolve: { alias: { '@': fileURLToPath(new URL('./src', import.meta.url)), }, }, build: { minify: 'terser', terserOptions: { compress: { drop_console: true, drop_debugger: true, }, }, }, css: { preprocessorOptions: { scss: { additionalData: '@use "@/assets/styles/mixins.scss" as *;', }, }, }, define: { 'process.env': {} }, // 开发服务器配置 server: { // 启动时自动打开浏览器 // 开发服务器端口 port: 3000, // 允许局域网访问 host: '0.0.0.0', proxy: { '/remoteServer': { target: 'http://192.168.1.199:8080/', changeOrigin: true, secure: false, ws: true, rewrite: path => path.replace(/^\/remoteServer/, ''), }, } }, })