vite.config.ts 973 B

123456789101112131415161718192021222324252627282930313233343536
  1. import { defineConfig, loadEnv } from 'vite'
  2. import vue from '@vitejs/plugin-vue'
  3. import path from 'path'
  4. // https://vite.dev/config/
  5. export default defineConfig(({ mode }) => {
  6. const env = loadEnv(mode, process.cwd(), '')
  7. const isProd = mode === 'production'
  8. return {
  9. plugins: [vue()],
  10. server: {
  11. host: '0.0.0.0',
  12. port: 8081,
  13. },
  14. css: {
  15. preprocessorOptions: {
  16. less: {
  17. javascriptEnabled: true,
  18. },
  19. },
  20. },
  21. resolve: {
  22. alias: {
  23. '@': path.resolve(__dirname, 'src'),
  24. },
  25. },
  26. // 各字段单独 define,避免对象内 JSON.stringify 被 Vite 二次序列化导致 URL 带引号
  27. define: {
  28. 'VE_ENV.MODE': JSON.stringify(isProd ? 'production' : 'development'),
  29. 'VE_ENV.SERVER': JSON.stringify(env.VITE_SERVER ?? ''),
  30. 'VE_ENV.PYSERVER': JSON.stringify(env.VITE_PYSERVER ?? ''),
  31. 'VE_ENV.MOCK': JSON.stringify(env.VITE_MOCK ?? 'False'),
  32. },
  33. }
  34. })