vite.config.ts 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. import path from 'path'
  2. import { defineConfig, loadEnv } from 'vite'
  3. import vue from '@vitejs/plugin-vue'
  4. import vueJsx from '@vitejs/plugin-vue-jsx'
  5. import VueMacros from 'unplugin-vue-macros/vite'
  6. import glob from 'fast-glob'
  7. // import {
  8. // epPackage,
  9. // epRoot,
  10. // getPackageDependencies,
  11. // pkgRoot,
  12. // projRoot,
  13. // } from '@kankan-components/build-utils'
  14. export default defineConfig(async ({ mode }) => {
  15. const env = loadEnv(mode, process.cwd(), '')
  16. // let { dependencies } = getPackageDependencies(epPackage)
  17. // dependencies = dependencies.filter((dep) => !dep.startsWith('@types/')) // exclude dts deps
  18. // const optimizeDeps = (
  19. // await glob(['dayjs/(locale|plugin)/*.js'], {
  20. // cwd: path.resolve(projRoot, 'node_modules'),
  21. // })
  22. // ).map((dep) => dep.replace(/\.js$/, ''))
  23. return {
  24. server: {
  25. host: true,
  26. https: !!env.HTTPS,
  27. port: 6868,
  28. proxy: {
  29. '/demoServer': {
  30. target: 'https://test.4dkankan.com',
  31. changeOrigin: true,
  32. rewrite: (path) => path.replace(/^\/demoServer/, ''),
  33. },
  34. },
  35. },
  36. plugins: [
  37. //@ts-ignore
  38. VueMacros({
  39. setupComponent: false,
  40. setupSFC: false,
  41. plugins: {
  42. vue: vue(),
  43. vueJsx: vueJsx(),
  44. },
  45. }),
  46. ],
  47. optimizeDeps: {
  48. include: ['vue', '@vue/shared'],
  49. },
  50. }
  51. })