import { defineConfig } from "vite"; import vue from "@vitejs/plugin-vue"; import { createSvgIconsPlugin } from "vite-plugin-svg-icons"; import { resolve } from "path"; function pathResolve(dir) { return resolve(process.cwd(), ".", dir); } export default defineConfig({ resolve: { alias: [{ find: "@", replacement: pathResolve("src"), }, ], dedupe: ["vue"], }, plugins: [ vue(), createSvgIconsPlugin({ // 指定需要缓存的图标文件夹 iconDirs: [resolve(process.cwd(), "src/assets/svg")], // 指定symbolId格式 symbolId: "icon-[dir]-[name]", }), ], css: { // css预处理器 preprocessorOptions: { less: { charset: false, // 解决中文乱码 modifyVars: { "arcoblue-6": "#d1402f", }, javascriptEnabled: true, additionalData: '@import "@/assets/css/theme.less";@import "@/assets/css/global.less";', }, }, }, build: { minify: true, // 生产环境不生成sourcemap target: "es2015", // 警报门槛,限制大文件大小 chunkSizeWarningLimit: 5000, rollupOptions: { external: [], // 外部化处理那些你不想打包进库的依赖 // 静态资源分类打包 output: { chunkFileNames: "static/js/[name]-[hash].js", entryFileNames: "static/js/[name]-[hash].js", assetFileNames: "static/[ext]/[name]-[hash].[ext]", }, }, }, server: { port: 8088, host: "0.0.0.0", open: true, cors: true, hmr: true, proxy: { "/api": { // target: "http://sim.nanodreamtech.com", // target: "http://127.0.0.1:3001", // target: "http://sim.ainets.net", target:import.meta.env.VITE_API_URL, changeOrigin: true, ws: true, secure: true, }, }, }, });