mirror of
https://github.com/Teamlinker/Teamlinker.git
synced 2025-06-03 03:00:17 +00:00
57 lines
1.8 KiB
TypeScript
57 lines
1.8 KiB
TypeScript
import {defineConfig} from 'vite'
|
|
import vue from '@vitejs/plugin-vue'
|
|
import * as fs from "fs";
|
|
import * as path from "path";
|
|
import viteCompression from 'vite-plugin-compression'
|
|
import {createSvgIconsPlugin} from "vite-plugin-svg-icons";
|
|
|
|
export default defineConfig({
|
|
resolve: {
|
|
alias: {
|
|
"@": path.join(__dirname, "src")
|
|
}
|
|
},
|
|
plugins: [
|
|
vue(),
|
|
viteCompression({
|
|
threshold: 102400
|
|
}),
|
|
createSvgIconsPlugin({
|
|
iconDirs: [path.join(__dirname, "./src/assert/custom")],
|
|
symbolId: '[name]'
|
|
})
|
|
],
|
|
server: {
|
|
host: "0.0.0.0",
|
|
https: {
|
|
key: fs.readFileSync(path.join(__dirname, './certs/key.pem')),
|
|
cert: fs.readFileSync(path.join(__dirname, './certs/cert.pem'))
|
|
},
|
|
port: 3000,
|
|
hmr: true,
|
|
open: false, //自动打开
|
|
base: "./ ", //生产环境路径
|
|
proxy: { // 本地开发环境通过代理实现跨域,生产环境使用 nginx 转发
|
|
// 正则表达式写法
|
|
'^/api': {
|
|
secure: false,
|
|
target: 'https://localhost:14000/api', // 后端服务实际地址
|
|
changeOrigin: true, //开启代理
|
|
rewrite: (path) => path.replace(/^\/api/, '')
|
|
},
|
|
'^/file': {
|
|
secure: false,
|
|
target: 'https://localhost:14000/file', // 后端服务实际地址
|
|
changeOrigin: true, //开启代理
|
|
rewrite: (path) => path.replace(/^\/file/, '')
|
|
},
|
|
"/socket.io": {
|
|
target: "https://localhost:14000",
|
|
secure: false,
|
|
ws: true,
|
|
changeOrigin: true
|
|
}
|
|
}
|
|
},
|
|
})
|