gtsoft-snail-job-admin/vite.config.ts

52 lines
1.3 KiB
TypeScript
Raw Normal View History

2024-03-08 17:59:45 +08:00
import process from 'node:process';
import { URL, fileURLToPath } from 'node:url';
import { defineConfig, loadEnv } from 'vite';
import { setupVitePlugins } from './build/plugins';
2024-06-26 17:30:11 +08:00
import { createViteProxy, getBuildTime } from './build/config';
2024-03-08 17:59:45 +08:00
export default defineConfig(configEnv => {
const viteEnv = loadEnv(configEnv.mode, process.cwd()) as unknown as Env.ImportMeta;
2024-06-26 17:30:11 +08:00
const buildTime = getBuildTime();
2024-03-08 17:59:45 +08:00
2024-08-30 16:34:49 +08:00
const enableProxy = configEnv.command === 'serve' && !configEnv.isPreview;
2024-03-08 17:59:45 +08:00
return {
base: viteEnv.VITE_BASE_URL,
resolve: {
alias: {
'~': fileURLToPath(new URL('./', import.meta.url)),
'@': fileURLToPath(new URL('./src', import.meta.url))
}
},
css: {
preprocessorOptions: {
scss: {
2024-09-21 14:14:10 +08:00
api: 'modern-compiler',
additionalData: `@use "@/styles/scss/global.scss" as *;`
2024-03-08 17:59:45 +08:00
}
}
},
2024-06-07 11:24:30 +08:00
plugins: setupVitePlugins(viteEnv, buildTime),
2024-03-08 17:59:45 +08:00
define: {
BUILD_TIME: JSON.stringify(buildTime)
},
server: {
host: '0.0.0.0',
port: 9527,
open: true,
2025-03-03 11:54:57 +08:00
proxy: createViteProxy(viteEnv, enableProxy)
2024-03-08 17:59:45 +08:00
},
preview: {
port: 9725
},
build: {
reportCompressedSize: false,
sourcemap: viteEnv.VITE_SOURCE_MAP === 'Y',
commonjsOptions: {
ignoreTryCatch: false
}
}
};
});