vite.config.ts 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. import { defineConfig } from 'vite';
  2. import vue from '@vitejs/plugin-vue';
  3. import vueJsx from '@vitejs/plugin-vue-jsx';
  4. import Components from 'unplugin-vue-components/vite';
  5. import { NaiveUiResolver } from 'unplugin-vue-components/resolvers';
  6. import viteESLint from 'vite-plugin-eslint';
  7. import legacyPlugin 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. // https://vitejs.dev/config/
  14. // https://github.com/vitejs/vite/issues/1930 .env
  15. const proxyUrl = 'https://dev.colexiu.com/';
  16. export default defineConfig({
  17. base: './',
  18. plugins: [
  19. vue(),
  20. vueJsx(),
  21. viteESLint(),
  22. Components({
  23. dts: true,
  24. resolvers: [NaiveUiResolver()]
  25. }),
  26. legacyPlugin({
  27. targets: ['defaults', 'not IE 11'],
  28. additionalLegacyPolyfills: ['regenerator-runtime/runtime'],
  29. renderLegacyChunks: true,
  30. polyfills: [
  31. 'es.symbol',
  32. 'es.promise',
  33. 'es.promise.finally',
  34. 'es/map',
  35. 'es/set',
  36. 'es.array.filter',
  37. 'es.array.for-each',
  38. 'es.array.flat-map',
  39. 'es.object.define-properties',
  40. 'es.object.define-property',
  41. 'es.object.get-own-property-descriptor',
  42. 'es.object.get-own-property-descriptors',
  43. 'es.object.keys',
  44. 'es.object.to-string',
  45. 'web.dom-collections.for-each',
  46. 'esnext.global-this',
  47. 'esnext.string.match-all'
  48. ]
  49. })
  50. ],
  51. resolve: {
  52. alias: {
  53. '@': resolve('./src'),
  54. '@common': resolve('./src/common'),
  55. '@components': resolve('./src/components'),
  56. '@store': resolve('./src/store'),
  57. '@views': resolve('./src/views')
  58. }
  59. },
  60. server: {
  61. host: '0.0.0.0',
  62. port: 5002,
  63. strictPort: true,
  64. cors: true,
  65. https: false,
  66. proxy: {
  67. '/api-auth': {
  68. target: proxyUrl,
  69. changeOrigin: true
  70. }
  71. }
  72. }
  73. });