Files
tunnel-cloud-web/vite.config.js
2023-12-03 20:19:07 +08:00

73 lines
1.7 KiB
JavaScript

import { fileURLToPath, URL } from 'node:url'
import { defineConfig } from 'vite'
import AutoImport from 'unplugin-auto-import/vite'
import Components from 'unplugin-vue-components/vite'
import { ElementPlusResolver } from 'unplugin-vue-components/resolvers'
import Icons from 'unplugin-icons/vite'
import IconsResolver from 'unplugin-icons/resolver'
import vue from '@vitejs/plugin-vue'
import Inspect from 'vite-plugin-inspect'
export default defineConfig({
plugins: [
vue(),
AutoImport({
//自动导入vue相关函数
imports: ['vue','vue-router'],
resolvers: [
ElementPlusResolver(),
//自动导入图标组件
IconsResolver({
prefix: 'Icon',
}),
],
}),
Components({
resolvers: [
// 自动注册图标组件
IconsResolver({
enabledCollections: ['ep'],
}),
//自动导入组件
ElementPlusResolver()
],
}),
Icons({
autoInstall: true,
}),
Inspect(),
],
resolve: {
alias: {
'@': fileURLToPath(new URL('./src', import.meta.url))
}
},
build: {
minify: 'esbuild',
terserOptions: {
compress: {
drop_console: false, // 生产环境移除log
drop_debugger: false // 生产环境禁用debugger
}
}
},
server: {
host: '0.0.0.0',
port: 8888,
strictPort: false,
open: true,
proxy: {
'/api': {
target: 'http://web-tunnel.feashow.com/api',
// target: 'http://192.168.31.175:8000',
changeOrigin: true,
rewrite: (path) => path.replace(/^\/api/, ''),
},
'/socket': {
target: 'ws://web-tunnel.feashow.com/api/notice-ws/notice',
ws: true
}
}
}
})