import { fileURLToPath, URL } from 'node:url'
import { defineConfig, loadEnv } from 'vite'
import vue from '@vitejs/plugin-vue'
import vueJsx from '@vitejs/plugin-vue-jsx'
import VueDevTools from 'vite-plugin-vue-devtools'
export default defineConfig(({ mode, command }) => {
const env = loadEnv(mode, process.cwd());
return {
plugins: [
vue(),
vueJsx(),
VueDevTools(),
],
server: {
host: '0.0.0.0',
proxy: {
[env.VITE_APP_BASE_API]: {
target: `http://172.16.16.7:8088`,
changeOrigin: true,
rewrite: (path) => path.replace(RegExp(`^${env.VITE_APP_BASE_API}`), ''),
bypass(req, res, options: any) {
const proxyURL = options.target + options.rewrite(req.url);
console.log('proxyURL', proxyURL);
req.headers['x-req-proxyURL'] = proxyURL;
res.setHeader('x-res-proxyURL', proxyURL);
},
},
}
},
resolve: {
alias: {
'@': fileURLToPath(new URL('./src', import.meta.url))
}
}
}
})