import { defineConfig , loadEnv} from 'vite' import vue from '@vitejs/plugin-vue' import path from 'path' import AutoImport from 'unplugin-auto-import/vite' import Components from 'unplugin-vue-components/vite' import { ElementPlusResolver } from 'unplugin-vue-components/resolvers' import svgLoader from 'vite-svg-loader' // https://vitejs.dev/config/ export default ({ mode }) => { const env = loadEnv(mode, process.cwd()); return defineConfig({ base: env.VITE_BASE, define: { 'process.env': env }, plugins: [ vue(), svgLoader(), AutoImport({ imports: [ 'vue' ], resolvers: [ElementPlusResolver()], }), Components({ resolvers: [ElementPlusResolver({ importStyle: "sass" })], }), ], resolve: { // https://cn.vitejs.dev/config/#resolve-alias alias: { // 设置别名 '~/': `${path.resolve(__dirname, 'src')}/`, '@': path.resolve(__dirname, './src/') }, // https://cn.vitejs.dev/config/#resolve-extensions extensions: ['.js'] }, css: { preprocessorOptions: { scss: { additionalData: `@use "src/assets/style/element.scss" as *;` }, }, }, server: { host: '0.0.0.0', proxy: { '/admin-api': { // http://118.253.151.67:8989/admin-api // http://127.0.0.1:8083 target: 'http://118.253.151.67:8989/admin-api', changeOrigin: true, rewrite: (p) => p.replace(/^\/admin-api/, '') } } }, build: { outDir: 'admin', } }) }