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:10010';
  5. // const target = "http://127.0.0.1:10010";
  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. });