mirror of
				https://github.com/soybeanjs/soybean-admin.git
				synced 2025-11-04 15:53:43 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			52 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			52 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
import process from 'node:process';
 | 
						|
import { URL, fileURLToPath } from 'node:url';
 | 
						|
import { defineConfig, loadEnv } from 'vite';
 | 
						|
import { setupVitePlugins } from './build/plugins';
 | 
						|
import { createViteProxy, getBuildTime } from './build/config';
 | 
						|
 | 
						|
export default defineConfig(configEnv => {
 | 
						|
  const viteEnv = loadEnv(configEnv.mode, process.cwd()) as unknown as Env.ImportMeta;
 | 
						|
 | 
						|
  const buildTime = getBuildTime();
 | 
						|
 | 
						|
  const enableProxy = configEnv.command === 'serve' && !configEnv.isPreview;
 | 
						|
 | 
						|
  return {
 | 
						|
    base: viteEnv.VITE_BASE_URL,
 | 
						|
    resolve: {
 | 
						|
      alias: {
 | 
						|
        '~': fileURLToPath(new URL('./', import.meta.url)),
 | 
						|
        '@': fileURLToPath(new URL('./src', import.meta.url))
 | 
						|
      }
 | 
						|
    },
 | 
						|
    css: {
 | 
						|
      preprocessorOptions: {
 | 
						|
        scss: {
 | 
						|
          api: 'modern-compiler',
 | 
						|
          additionalData: `@use "@/styles/scss/global.scss" as *;`
 | 
						|
        }
 | 
						|
      }
 | 
						|
    },
 | 
						|
    plugins: setupVitePlugins(viteEnv, buildTime),
 | 
						|
    define: {
 | 
						|
      BUILD_TIME: JSON.stringify(buildTime)
 | 
						|
    },
 | 
						|
    server: {
 | 
						|
      host: '0.0.0.0',
 | 
						|
      port: 9527,
 | 
						|
      open: true,
 | 
						|
      proxy: createViteProxy(viteEnv, enableProxy)
 | 
						|
    },
 | 
						|
    preview: {
 | 
						|
      port: 9725
 | 
						|
    },
 | 
						|
    build: {
 | 
						|
      reportCompressedSize: false,
 | 
						|
      sourcemap: viteEnv.VITE_SOURCE_MAP === 'Y',
 | 
						|
      commonjsOptions: {
 | 
						|
        ignoreTryCatch: false
 | 
						|
      }
 | 
						|
    }
 | 
						|
  };
 | 
						|
});
 |