No puede seleccionar más de 25 temas Los temas deben comenzar con una letra o número, pueden incluir guiones ('-') y pueden tener hasta 35 caracteres de largo.

58 líneas
1.5KB

  1. import { defineConfig } from 'vite'
  2. import vue from '@vitejs/plugin-vue'
  3. import eslintPlugin from 'vite-plugin-eslint'
  4. import VueSetupExtend from 'vite-plugin-vue-setup-extend'
  5. import { createSvgIconsPlugin } from 'vite-plugin-svg-icons'
  6. import vueJsx from '@vitejs/plugin-vue-jsx'
  7. import path from 'path'
  8. // import vueDevTools from 'vite-plugin-vue-devtools'
  9. // https://vitejs.dev/config/
  10. export default defineConfig(() => {
  11. return {
  12. plugins: [
  13. // vueDevTools(),
  14. vue(),
  15. VueSetupExtend(),
  16. vueJsx({
  17. // options are passed on to @vue/babel-plugin-jsx
  18. }),
  19. eslintPlugin({
  20. include: ['src/**/*.js', 'src/**/*.vue', 'src/*.js', 'src/*.vue']
  21. }),
  22. createSvgIconsPlugin({
  23. // 配置路径在你的src里的svg存放文件
  24. iconDirs: [path.resolve(process.cwd(), './src/assets/icons/svgs')],
  25. // 指定symbolId格式
  26. symbolId: 'icon-[dir]-[name]'
  27. })
  28. ],
  29. resolve: {
  30. // 配置路径别名
  31. alias: {
  32. '@': path.resolve(__dirname, './src')
  33. }
  34. },
  35. build: {
  36. // target: ['es2015', 'chrome58']
  37. // rollupOptions: {
  38. // manualChunks: (id) => {
  39. // if (id.includes('node_modules')) {
  40. // return 'vendor'
  41. // }
  42. // }
  43. // }
  44. },
  45. server: {
  46. open: true,
  47. host: '0.0.0.0',
  48. proxy: {
  49. '/pm': {
  50. // 后台地址
  51. target: 'http://121.199.28.40:9089',
  52. changeOrigin: true
  53. }
  54. }
  55. }
  56. }
  57. })