You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 

76 lines
2.0 KiB

import { defineConfig, loadEnv } from 'vite'
import react from '@vitejs/plugin-react'
import { viteMockServe } from 'vite-plugin-mock'
import jotaiDebugLabel from 'jotai/babel/plugin-debug-label'
import jotaiReactRefresh from 'jotai/babel/plugin-react-refresh'
//import { TanStackRouterVite } from '@tanstack/router-vite-plugin'
const proxyMap = {
'/api/v1/package': 'http://154.88.7.8:45321',
'/api/v1/movie': 'http://47.113.117.106:10000',
//'/api/v1/certold': 'http://192.168.31.41:8000',
'/api/v1/cert': 'http://127.0.0.1:8000',
//'/api/v1/cert': 'http://192.168.31.41:8000',
} as Record<any, string>
const proxyConfig = Object.keys(proxyMap).reduce((acc, key) => {
acc[key] = {
target: proxyMap[key],
changeOrigin: true,
rewrite: (path: string) => path,
}
return acc
}, {} as Record<any, any>)
// https://vitejs.dev/config/
export default defineConfig(({ mode }) => {
// 根据当前工作目录中的 `mode` 加载 .env 文件
// 设置第三个参数为 '' 来加载所有环境变量,而不管是否有 `VITE_` 前缀。
// @ts-ignore fix process
const env = loadEnv(mode, process.cwd(), '')
// 你可以在这里打印出 env 变量来检查加载的内容
return {
//定义别名的路径
resolve: {
alias: {
'@': '/src',
},
},
server: {
cors: {
origin: '*'
},
proxy: {
...proxyConfig,
'/api': {
target: env.API_URL,
changeOrigin: true,
rewrite: (path) => {
return path
}
}
},
},
plugins: [
react({
babel: {
presets: [ 'jotai/babel/preset' ],
plugins: [ jotaiDebugLabel, jotaiReactRefresh ]
},
}),
viteMockServe({
// 是否启用 mock 功能(默认值:process.env.NODE_ENV !== 'production')
enable: false,
// mock 文件的根路径,默认值:'mocks'
mockPath: 'mock',
logger: true,
}),
//TanStackRouterVite(),
],
}
})