vite.config.js 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. import {defineConfig} from 'vite'
  2. import vue from '@vitejs/plugin-vue'
  3. import {resolve} from "path";
  4. import config from "./src/config";
  5. import AutoImport from 'unplugin-auto-import/vite'
  6. import Components from 'unplugin-vue-components/vite'
  7. import {ElementPlusResolver} from 'unplugin-vue-components/resolvers'
  8. // https://vitejs.dev/config/
  9. export default defineConfig({
  10. css: {
  11. preprocessorOptions: {
  12. scss: {
  13. additionalData: `@import "./src/styles/app/_var.scss";`
  14. }
  15. }
  16. },
  17. resolve: {
  18. alias: {
  19. '~src': `${resolve(__dirname, './src')}`,
  20. '~ass': resolve(__dirname, './src/assets'),
  21. '~com': `${resolve(__dirname, './src/components')}`,
  22. '~api': resolve(__dirname, './src/api/modules'),
  23. '~sto': resolve(__dirname, './src/store/modules'),
  24. '~uti': resolve(__dirname, './src/utils')
  25. }
  26. },
  27. plugins: [
  28. vue(),
  29. AutoImport({
  30. resolvers: [ElementPlusResolver()],
  31. }),
  32. Components({
  33. resolvers: [ElementPlusResolver()],
  34. }),
  35. ],
  36. server: {
  37. ...config.vite,
  38. proxy: {
  39. '/api': {
  40. ws: true,
  41. changeOrigin: true,
  42. target: config.target,
  43. rewrite: (path) => path.replace(new RegExp('^/api'), '/'),
  44. }
  45. }
  46. },
  47. })