import { fileURLToPath, URL } from 'node:url' import { defineConfig } from 'vite' import vue from '@vitejs/plugin-vue' import VueInspector from 'vite-plugin-vue-inspector' // https://vitejs.dev/config/ export default defineConfig({ base: '', plugins: [ vue(), VueInspector(), ], server: { host: '0.0.0.0', port: 5173, // headers: { // 'Origin-Agent-Cluster': '?0', // }, proxy: { '/api': { target: 'https://server.pptist.cn', changeOrigin: true, rewrite: (path) => path.replace(/^\/api/, ''), }, '/yjs-auth': { target: 'https://yjsredis.cocorobo.cn', changeOrigin: true, rewrite: (path) => path.replace(/^\/yjs-auth/, ''), } } }, css: { preprocessorOptions: { scss: { additionalData: ` @import '@/assets/styles/variable.scss'; @import '@/assets/styles/mixin.scss'; ` }, }, }, resolve: { alias: { '@': fileURLToPath(new URL('./src', import.meta.url)) } }, optimizeDeps: { // ★ pptxtojson 是本地魔改版(dist 由 rollup 手动构建)。 // 若参与依赖预打包(node_modules/.vite/deps),修改 dist 后 dev server // 不会自动重新预打包,导致「改了解析器但页面始终用旧版」。 // exclude 后 dev 直接从磁盘读取最新 dist,重建后刷新浏览器即可生效。 exclude: ['pptxtojson'], }, })