vite.config.js 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. import { fileURLToPath, URL } from 'node:url'
  2. import { defineConfig, loadEnv } from 'vite'
  3. import vue from '@vitejs/plugin-vue'
  4. import VueDevTools from 'vite-plugin-vue-devtools'
  5. import VueSetupExtend from 'vite-plugin-vue-setup-extend'
  6. import autoImport from 'unplugin-auto-import/vite'
  7. import AutoImport from 'unplugin-auto-import/vite'
  8. import Components from 'unplugin-vue-components/vite'
  9. import { VantResolver } from '@vant/auto-import-resolver'
  10. const createAutoImport = () => {
  11. return autoImport({
  12. imports: ['vue', 'vue-router', 'pinia'],
  13. dts: false
  14. })
  15. }
  16. // https://vitejs.dev/config/
  17. export default defineConfig(({ mode }) => {
  18. const plugins = [
  19. vue(),
  20. VueSetupExtend(),
  21. createAutoImport(),
  22. AutoImport({
  23. resolvers: [VantResolver()]
  24. }),
  25. Components({
  26. resolvers: [VantResolver()]
  27. })
  28. ]
  29. if (mode === 'development') {
  30. plugins.push(VueDevTools())
  31. }
  32. return {
  33. plugins: plugins,
  34. resolve: {
  35. alias: {
  36. '@': fileURLToPath(new URL('./src', import.meta.url))
  37. }
  38. },
  39. server: {
  40. host: true,
  41. proxy: {
  42. '/dev-api': {
  43. target: 'http://172.16.8.74:8080/prod-api',
  44. // target: 'https://vue.ruoyi.vip/prod-api',
  45. changeOrigin: true,
  46. rewrite: (p) => p.replace(/^\/dev-api/, '')
  47. }
  48. }
  49. },
  50. //配置sass
  51. css: {
  52. preprocessorOptions: {
  53. scss: {
  54. additionalData:
  55. '@import "./src/assets/scss/globalVar.scss";@import "./src/assets/scss/globalMixin.scss";'
  56. }
  57. }
  58. }
  59. }
  60. })