kindergarten_java/reading-platform-frontend/vite.config.ts
2026-03-11 16:27:37 +08:00

79 lines
1.8 KiB
TypeScript

import { defineConfig } 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 { AntDesignVueResolver } from "unplugin-vue-components/resolvers";
import viteCompression from "vite-plugin-compression";
export default defineConfig({
plugins: [
vue(),
AutoImport({
imports: [
"vue",
"vue-router",
"pinia",
{
"ant-design-vue": ["message", "notification", "Modal"],
},
],
dts: "src/auto-imports.d.ts",
}),
Components({
resolvers: [
AntDesignVueResolver({
importStyle: false,
}),
],
dts: "src/components.d.ts",
}),
viteCompression({
verbose: true,
disable: false,
threshold: 10240,
algorithm: "gzip",
ext: ".gz",
}),
],
resolve: {
alias: {
"@": resolve(__dirname, "src"),
},
},
server: {
port: 5173,
host: true,
proxy: {
"/api": {
// target: 'http://localhost:8080',
target: "http://192.168.1.110:8080",
changeOrigin: true,
},
"/uploads": {
target: "http://192.168.1.110:8080",
changeOrigin: true,
},
},
},
build: {
rollupOptions: {
output: {
manualChunks: {
"ant-design-vue": ["ant-design-vue", "@ant-design/icons-vue"],
echarts: ["echarts"],
fullcalendar: [
"@fullcalendar/vue3",
"@fullcalendar/core",
"@fullcalendar/daygrid",
"@fullcalendar/timegrid",
"@fullcalendar/interaction",
],
dayjs: ["dayjs"],
},
},
},
chunkSizeWarningLimit: 1000,
},
});