| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- import { defineConfig } from 'vite'
- import react from '@vitejs/plugin-react'
- import { resolve } from 'path'
- import { readFileSync } from 'fs'
- // 版本更新文件(项目根目录 VERSION.md)—— 系统导航栏版本号的唯一来源
- // 构建/开发时由 Node 读取内容注入,运行期无需请求接口
- const versionFilePath = resolve(__dirname, '../VERSION.md')
- const versionFileContent = readFileSync(versionFilePath, 'utf-8')
- // 开发模式下修改 VERSION.md 自动重启 dev server 并刷新页面
- const versionFileReload = () => ({
- name: 'version-file-reload',
- configureServer(server: any) {
- server.watcher.add(versionFilePath)
- server.watcher.on('change', (file: string) => {
- if (file === versionFilePath) {
- server.restart()
- server.ws.send({ type: 'full-reload' })
- }
- })
- }
- })
- // https://vite.dev/config/
- export default defineConfig({
- plugins: [react(), versionFileReload()],
- define: {
- __APP_VERSION_FILE__: JSON.stringify(versionFileContent)
- },
- resolve: {
- alias: {
- '@': resolve(__dirname, 'src')
- }
- },
- base: './',
- server: {
- port: 5173,
- fs: {
- // 允许读取项目根目录(frontend 的上一层)下的 VERSION.md
- allow: ['..']
- },
- proxy: {
- // 开发环境代理:处理 /dipapp/iris-api/* 请求
- // 将所有 /dipapp/iris-api 前缀的请求转发到 IRIS 后端
- '/dipapp/iris-api': {
- target: 'http://172.16.2.15:52773',
- changeOrigin: true,
- rewrite: () => '/csp/drg/sysInternalMutiple'
- },
- // 兼容不带 /dipapp 前缀的请求(如有)
- '/iris-api': {
- target: 'http://172.16.2.15:52773',
- changeOrigin: true,
- rewrite: () => '/csp/drg/sysInternalMutiple'
- }
- }
- },
- build: {
- outDir: 'dist',
- assetsDir: 'assets',
- sourcemap: false
- }
- })
|