vite.config.ts 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. import { defineConfig } from "vite";
  2. import vue from "@vitejs/plugin-vue";
  3. import { resolve } from "path";
  4. // const target = "http://192.168.2.8:10080";
  5. const target = "http://127.0.0.1:10080";
  6. // const target = "http://192.168.2.178:10010";
  7. // const target = "http://47.101.180.183:10010";
  8. export default defineConfig({
  9. plugins: [vue()],
  10. server: {
  11. host: "0.0.0.0",
  12. port: 19123,
  13. open: true,
  14. proxy: {
  15. "/api": {
  16. // 这里的'/api'表示需要转发到的接口路径前缀
  17. target, // 将请求转发到的目标地址
  18. changeOrigin: true, // 支持跨域
  19. rewrite: (path) => path.replace(/^\/api/, ""), // 去除请求路径中的'/api'前缀
  20. },
  21. },
  22. },
  23. resolve: {
  24. alias: {
  25. "@": resolve(__dirname, "./src"),
  26. },
  27. extensions: [".mjs", ".js", ".ts", ".jsx", ".tsx", ".json", ".vue"],
  28. },
  29. css: {
  30. preprocessorOptions: {
  31. scss: {
  32. additionalData: '@import "@/styles/global.scss";'
  33. },
  34. },
  35. },
  36. build: {
  37. rollupOptions: {
  38. output: {
  39. entryFileNames: `assets/[name].${new Date().getTime()}.js`,
  40. chunkFileNames: `assets/[name].${new Date().getTime()}.js`,
  41. assetFileNames: `assets/[name].${new Date().getTime()}.[ext]`,
  42. compact: true,
  43. manualChunks: {
  44. vue: ['vue', 'vue-router', 'vuex'],
  45. echarts: ['echarts']
  46. },
  47. },
  48. }
  49. }
  50. });