vite.config.ts 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  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 ? 'https://xj-mix3d.4dkankan.com/' : 'https://mix3d.4dkankan.com',
  18. changeOrigin: true,
  19. rewrite: path => path.replace(/^\/api/, '')
  20. },
  21. '/swkk': {
  22. target: config.dev ? 'https://test.4dkankan.com' : 'https://www.4dkankan.com',
  23. changeOrigin: true,
  24. rewrite: path => path.replace(/^\/swkk/, '')
  25. },
  26. '/service': {
  27. target: config.dev ? 'https://test.4dkankan.com' : 'https://www.4dkankan.com',
  28. changeOrigin: true,
  29. },
  30. '/swss': {
  31. target: config.dev ? 'https://uat-laser.4dkankan.com/uat' : 'https://laser.4dkankan.com',
  32. changeOrigin: true,
  33. rewrite: path => path.replace(/^\/swss/, '')
  34. },
  35. '/laser': {
  36. target: config.dev ? 'https://uat-laser.4dkankan.com' : 'https://laser.4dkankan.com',
  37. changeOrigin: true,
  38. rewrite: path => path.replace(/^\/laser/, '/laser')
  39. }
  40. }
  41. const input = {
  42. [app]: resolve(__dirname, `${app}.html`),
  43. }
  44. // https://vitejs.dev/config/
  45. export default defineConfig({
  46. build: {
  47. rollupOptions: {
  48. input
  49. },
  50. },
  51. plugins: [vue(), mkcert() ],
  52. css: {
  53. preprocessorOptions: {
  54. less: {
  55. javascriptEnabled: true
  56. }
  57. }
  58. },
  59. base: './',
  60. assetsInclude: ['public/**/*'],
  61. resolve: {
  62. extensions: ['.js', '.ts', '.json', '.vue'],
  63. alias: [
  64. {
  65. find: '@',
  66. replacement: resolve(__dirname, './src')
  67. },
  68. {
  69. find: 'bill',
  70. replacement: resolve(__dirname, './src/components/bill-ui')
  71. }
  72. ]
  73. },
  74. server: {
  75. host: '0.0.0.0',
  76. port: 7173,
  77. open: true,
  78. proxy: proxy,
  79. https: true
  80. },
  81. preview: {
  82. proxy
  83. }
  84. })