vite.config.ts 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. import { defineConfig } from 'vite'
  2. import vue from '@vitejs/plugin-vue'
  3. import styleImport from 'vite-plugin-style-import'
  4. import glsl from 'vite-plugin-glsl'
  5. import { VitePWA } from 'vite-plugin-pwa'
  6. import vueJsx from '@vitejs/plugin-vue-jsx'
  7. import legacy from '@vitejs/plugin-legacy'
  8. // eslint-disable-next-line @typescript-eslint/no-var-requires
  9. // const path = require('path')
  10. // function resolve(dir: string) {
  11. // return path.join(__dirname, dir)
  12. // }
  13. const { resolve } = require('path')
  14. // https://vitejs.dev/config/
  15. // https://github.com/vitejs/vite/issues/1930 .env
  16. // const proxyUrl = 'https://mstutest.dayaedu.com/';
  17. const proxyUrl = 'https://dev.colexiu.com/'
  18. // const proxyUrl = 'http://192.168.3.143:8000/'
  19. export default defineConfig({
  20. base: './',
  21. plugins: [
  22. vue(),
  23. glsl(),
  24. vueJsx(),
  25. legacy({
  26. targets: ['> 0.25%, not dead'],
  27. ignoreBrowserslistConfig: true,
  28. }),
  29. styleImport({
  30. libs: [
  31. {
  32. libraryName: 'vant',
  33. esModule: true,
  34. resolveStyle: name => `vant/es/${name}/style`
  35. }
  36. ]
  37. }),
  38. VitePWA({
  39. workbox: {
  40. cleanupOutdatedCaches: true,
  41. },
  42. base: './',
  43. })
  44. ],
  45. resolve: {
  46. alias: {
  47. '@': resolve(__dirname, './src'),
  48. '@common': resolve(__dirname, './src/common'),
  49. '@components': resolve(__dirname, './src/components'),
  50. '@business-components': resolve(__dirname, './src/business-components'),
  51. '@store': resolve(__dirname, './src/store'),
  52. '@views': resolve(__dirname, './src/views')
  53. }
  54. },
  55. server: {
  56. host: '0.0.0.0',
  57. port: 5000,
  58. strictPort: true,
  59. cors: true,
  60. proxy: {
  61. '/api-auth': {
  62. target: proxyUrl,
  63. changeOrigin: true
  64. },
  65. '/api-student': {
  66. target: proxyUrl,
  67. changeOrigin: true
  68. },
  69. '/api-teacher': {
  70. target: proxyUrl,
  71. changeOrigin: true
  72. },
  73. '/api-web': {
  74. target: proxyUrl,
  75. changeOrigin: true
  76. },
  77. '/api-cms': {
  78. target: proxyUrl,
  79. changeOrigin: true
  80. },
  81. '/api-admin': {
  82. target: proxyUrl,
  83. changeOrigin: true
  84. },
  85. '/music': {
  86. target: proxyUrl,
  87. changeOrigin: true
  88. },
  89. '/api-mall-portal': {
  90. target: proxyUrl,
  91. changeOrigin: true
  92. }
  93. }
  94. },
  95. build: {
  96. rollupOptions: {
  97. input: {
  98. index: resolve(__dirname, 'index.html'),
  99. teacher: resolve(__dirname, 'teacher.html')
  100. }
  101. }
  102. }
  103. })