vite.config.ts 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. import { defineConfig } from "vite";
  2. import vue from "@vitejs/plugin-vue";
  3. import { resolve } from "path";
  4. import ElementPlus from "unplugin-element-plus/vite";
  5. import WindiCSS from 'vite-plugin-windicss'
  6. import legacy from '@vitejs/plugin-legacy';
  7. let app = "criminal";
  8. if (process.argv.length > 3) {
  9. app = process.argv[process.argv.length - 1].trim();
  10. }
  11. const dev = true;
  12. export default defineConfig({
  13. define: {
  14. VITE_APP_APP: JSON.stringify(app),
  15. },
  16. base: "./",
  17. build: {
  18. outDir: `dist/${app}`,
  19. },
  20. resolve: {
  21. alias: [
  22. {
  23. find: "@",
  24. replacement: resolve(__dirname, "./src"),
  25. },
  26. ],
  27. },
  28. css: {
  29. preprocessorOptions: {
  30. scss: {
  31. additionalData: `@use "@/app/${app}/useStyle.scss" as *;`,
  32. },
  33. },
  34. },
  35. plugins: [
  36. vue(),
  37. WindiCSS(),
  38. ElementPlus({
  39. useSource: true,
  40. }),
  41. // legacy({
  42. // targets: ['chrome 52'], // 需要兼容的目标列表,可以设置多个
  43. // additionalLegacyPolyfills: ['regenerator-runtime/runtime'], // 面向IE11时需要此插件
  44. // }),
  45. ],
  46. server: {
  47. port: 5173,
  48. host: "0.0.0.0",
  49. proxy: {
  50. "/api": {
  51. target: dev ? "http://192.168.0.55:8808" : "mix3d.4dkankan.com",
  52. changeOrigin: true,
  53. rewrite: (path) => path.replace(new RegExp(`^/api`), ""),
  54. },
  55. "/fusion": {
  56. target: dev ? "http://192.168.0.55:8808" : "mix3d.4dkankan.com",
  57. changeOrigin: true,
  58. rewrite: (path) => path.replace(new RegExp(`^/api`), "/fusion"),
  59. },
  60. "/dev-code": {
  61. // target: "http://192.168.9.171:9200",
  62. target: dev
  63. ? "https://test-mix3d.4dkankan.com/code"
  64. : "https://mix3d.4dkankan.com/code",
  65. changeOrigin: true,
  66. secure: false,
  67. rewrite: (path) => path.replace(new RegExp(`^/dev-code`), ""),
  68. },
  69. "/swkk": {
  70. target: dev ? "https://test.4dkankan.com" : "https://www.4dkankan.com",
  71. changeOrigin: true,
  72. rewrite: (path) => path.replace(new RegExp(`^/swkk`), ""),
  73. },
  74. "/service": {
  75. target: dev ? "http://192.168.0.55" : "https://www.4dkankan.com",
  76. changeOrigin: true,
  77. },
  78. "/swss": {
  79. target: dev
  80. ? "https://uat-laser.4dkankan.com/uat"
  81. : "https://laser.4dkankan.com",
  82. changeOrigin: true,
  83. rewrite: (path) => path.replace(new RegExp(`^/swss`), ""),
  84. },
  85. "/laser": {
  86. target: dev
  87. ? "https://uat-laser.4dkankan.com"
  88. : "https://laser.4dkankan.com",
  89. changeOrigin: true,
  90. rewrite: (path) => path.replace(new RegExp(`^/laser`), "/laser"),
  91. },
  92. "/v3": {
  93. target: dev
  94. ? "https://restapi.amap.com"
  95. : "https://laser.4dkankan.com",
  96. changeOrigin: true,
  97. rewrite: (path) => path.replace(new RegExp(`^/swss`), ""),
  98. },
  99. },
  100. },
  101. });