import { defineConfig } from 'vite' import vue from '@vitejs/plugin-vue' import Pages from 'vite-plugin-pages' import Layouts from 'vite-plugin-vue-layouts' import path from 'path' // https://vitejs.dev/config/ export default defineConfig({ plugins: [ vue(), Pages({ dirs: [ { dir: 'src/page', baseRoute: '' }, { dir: 'src/views', baseRoute: '' } ], exclude: [ '**/components/*.vue', '**/component/*.vue', '**/component/**/*' ] }), Layouts({ layoutsDirs: 'src/layout', defaultLayout: 'index' }) ], resolve: { alias: { '@': path.resolve(path.resolve(), 'src') } }, minify: 'terser', build: { chunkSizeWarningLimit: 1500, rollupOptions: { output: { manualChunks(id) { if (id.includes('node_modules')) { return id .toString() .split('node_modules/')[1] .split('/')[0] .toString() } } } } }, server: { open: true, proxy: { '/api': { // 正式环境地址 // target: 'https://dev.wutongresearch.club/api', target: 'https://prod.wutongshucloud.com/api', // target: 'http://192.168.31.181:8110', changeOrigin: true, rewrite: path => path.replace(/^\/api/, '') } } } })