import { defineConfig, ConfigEnv, loadEnv, UserConfig } from 'vite' import vue from '@vitejs/plugin-vue' import { resolve } from "path"; import AutoImport from 'unplugin-auto-import/vite' import Components from 'unplugin-vue-components/vite' import { ElementPlusResolver } from 'unplugin-vue-components/resolvers' import { createStyleImportPlugin, VxeTableResolve } from 'vite-plugin-style-import' const pathSrc = resolve(__dirname, "./src") // https://vitejs.dev/config/ export default defineConfig(({ mode }: ConfigEnv): UserConfig => { const env = loadEnv(mode, process.cwd()); return { base: "./", build: { emptyOutDir: true, //清空输出路径 //编译后输出路径 outDir: 'F:\\Eclipse\\workspaceText\\abacus.cloud.oauth2.acas\\src\\main\\resources\\html\\vue\\sms' }, resolve: { alias: { '@': pathSrc, }, }, server: { host: "0.0.0.0", port: 3000, open: false, // 反向代理解决跨域 proxy: { '/temp': { target: "http://localhost/", changeOrigin: true,//是否跨域 }, '/sms/': { target: "http://localhost/", changeOrigin: true,//是否跨域 //rewrite: (path) => path.replace(/^\/sms/, '/acas'), }, '/pay/': { target: "http://192.9.200.161:9060/", changeOrigin: true,//是否跨域 //rewrite: (path) => path.replace(/^\/sms/, '/acas'), }, '/frameconfig': { target: "http://localhost/", changeOrigin: true,//是否跨域 }, }, }, plugins: [ vue(), AutoImport({ // 自动导入 Vue 相关函数,如:ref, reactive, toRef 等 imports: ["vue", 'vue-router', "@vueuse/core"], dts: 'src/auto-import.d.ts', resolvers: [ElementPlusResolver()], }), Components({ resolvers: [ElementPlusResolver()], }), createStyleImportPlugin({ resolves: [ VxeTableResolve() ], }), ], css: { // CSS 预处理器 preprocessorOptions: { //define global scss variable scss: { //javascriptEnabled: true, //更新vite6后报错,注释 additionalData: `@use "@/framework/styles/variables.scss" as *;` } } }, } })