123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 |
- import { fileURLToPath, URL } from "node:url";
- import fs from 'node:fs';
- import { defineConfig } from "vite";
- import vue from "@vitejs/plugin-vue";
- import vueDevTools from "vite-plugin-vue-devtools";
- import vueJsx from "@vitejs/plugin-vue-jsx";
- import { createSvgIconsPlugin } from "vite-plugin-svg-icons";
- import { codeInspectorPlugin } from 'code-inspector-plugin';
- import { resolve } from "path";
- console.log("==", resolve(process.cwd(), "src/assets/svg"))
- // https://vite.dev/config/
- export default defineConfig({
- base: "./",
- plugins: [
- vue(),
- vueJsx(),
- // vueDevTools(),
- createSvgIconsPlugin({
- // 指定需要缓存的图标文件夹
- iconDirs: [ resolve(process.cwd(), "src/assets/svg")],
- // 指定symbolId格式
- symbolId: "icon-[dir]-[name]",
- }),
- codeInspectorPlugin({
- bundler: 'vite',
- }),
- ],
- resolve: {
- alias: {
- "@": fileURLToPath(new URL("./src", import.meta.url)),
- },
- },
- css: {
- // css预处理器
- preprocessorOptions: {
- less: {
- charset: false, // 解决中文乱码
- javascriptEnabled: true,
- additionalData:
- '@import "@/assets/css/global.less";@import "@/assets/css/theme.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: {
- host: true,
- port: 5173,
- open: true,
- cors: true,
- hmr: true,
- proxy: {
- "^/api": {
- target:"https://192.168.0.59:3001",
- changeOrigin: true,
- // secure: false,
- }
- },
-
- },
- });
|