vite.config.ts 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. import { fileURLToPath, URL } from 'node:url'
  2. import { defineConfig } from 'vite'
  3. import vue from '@vitejs/plugin-vue'
  4. import AutoImport from 'unplugin-auto-import/vite'
  5. import Components from 'unplugin-vue-components/vite'
  6. import { ElementPlusResolver } from 'unplugin-vue-components/resolvers'
  7. import Icons from 'unplugin-icons/vite'
  8. import IconsResolver from 'unplugin-icons/resolver'
  9. // https://vitejs.dev/config/
  10. export default defineConfig({
  11. base: `/`,
  12. // base: `/k_new_online/`,
  13. resolve: {
  14. alias: {
  15. '@': fileURLToPath(new URL('./src', import.meta.url))
  16. }
  17. },
  18. plugins: [
  19. vue(),
  20. AutoImport({
  21. resolvers: [
  22. ElementPlusResolver(),
  23. IconsResolver({
  24. prefix: 'Icon'
  25. })
  26. ],
  27. imports: [
  28. 'vue',
  29. // 自定义全局引入
  30. {
  31. // 全局引入"src/api/index.ts"的`default`导出,注册为全局变量`api`
  32. // 相当于在每个ts/vue文件中执行了一次 `import api from "@/api/index"`;
  33. '@/api/index': [['default', '$api']]
  34. }
  35. ],
  36. dts: './src/auto-imports.d.ts'
  37. }),
  38. Components({
  39. resolvers: [
  40. ElementPlusResolver(), // 自动注册图标组件
  41. IconsResolver({
  42. enabledCollections: ['ep']
  43. })
  44. ]
  45. }),
  46. Icons({
  47. autoInstall: true
  48. })
  49. ],
  50. server: {
  51. port: 80,
  52. hmr: true,
  53. open: true,
  54. // 设置 https 代理
  55. proxy: {
  56. '/api': {
  57. target: 'http://192.168.0.161',
  58. changeOrigin: true,
  59. rewrite: (path: string) => path.replace(/^\/api/, '')
  60. }
  61. }
  62. }
  63. })