vite.config.ts 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. import { defineConfig } from 'vite'
  2. import vue from '@vitejs/plugin-vue'
  3. import config from './config.js'
  4. import mkcert from 'vite-plugin-mkcert'
  5. import { resolve } from 'path'
  6. let app = "index";
  7. if (process.argv.length > 3) {
  8. app = process.argv[process.argv.length - 1].trim();
  9. }
  10. const proxy = {
  11. '/local': {
  12. target: 'http://192.168.0.38:8808',
  13. changeOrigin: true,
  14. rewrite: path => path.replace(/^\/local/, '')
  15. },
  16. '/fusion-xj': {
  17. target: config.dev ? 'http://192.168.0.25' : 'https://192.168.0.25',
  18. changeOrigin: true,
  19. rewrite: path => path.replace(/^\/api/, '')
  20. },
  21. '/oss': {
  22. target: config.dev ? 'http://192.168.0.25/' : 'https://192.168.0.25',
  23. changeOrigin: true,
  24. },
  25. // '/swkk': {
  26. // target: config.dev ? 'http://192.168.0.25/swkk' : 'https://www.4dkankan.com',
  27. // changeOrigin: true,
  28. // rewrite: path => path.replace(/^\/swkk/, '')
  29. // },
  30. '/service': {
  31. target: config.dev ? 'https://test.4dkankan.com' : 'https://www.4dkankan.com',
  32. changeOrigin: true,
  33. },
  34. // '/swss': {
  35. // target: config.dev ? 'https://uat-laser.4dkankan.com/uat' : 'https://laser.4dkankan.com',
  36. // changeOrigin: true,
  37. // rewrite: path => path.replace(/^\/swss/, '')
  38. // },
  39. '/laser': {
  40. target: config.dev ? 'https://uat-laser.4dkankan.com' : 'https://laser.4dkankan.com',
  41. changeOrigin: true,
  42. rewrite: path => path.replace(/^\/laser/, '/laser')
  43. }
  44. }
  45. const input = {
  46. [app]: resolve(__dirname, `${app}.html`),
  47. }
  48. // https://vitejs.dev/config/
  49. export default defineConfig({
  50. build: {
  51. rollupOptions: {
  52. input
  53. },
  54. },
  55. plugins: [vue(), mkcert() ],
  56. css: {
  57. preprocessorOptions: {
  58. less: {
  59. javascriptEnabled: true
  60. }
  61. }
  62. },
  63. base: './',
  64. assetsInclude: ['public/**/*'],
  65. resolve: {
  66. extensions: ['.js', '.ts', '.json', '.vue'],
  67. alias: [
  68. {
  69. find: '@',
  70. replacement: resolve(__dirname, './src')
  71. },
  72. {
  73. find: 'bill',
  74. replacement: resolve(__dirname, './src/components/bill-ui')
  75. }
  76. ]
  77. },
  78. server: {
  79. host: '0.0.0.0',
  80. port: 7173,
  81. open: true,
  82. proxy: proxy,
  83. https: true
  84. },
  85. preview: {
  86. proxy
  87. }
  88. })