vite.config.js 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. import { defineConfig, normalizePath } from "vite";
  2. import { ViteMinifyPlugin } from 'vite-plugin-minify'
  3. import { dirname, resolve } from 'path'
  4. import { viteStaticCopy } from 'vite-plugin-static-copy';
  5. const projectRoot = dirname(import.meta.filename);
  6. const __dirname = projectRoot
  7. const paths = {
  8. src: `${projectRoot}/src`,
  9. assets: `${projectRoot}/public/assets`
  10. }
  11. export default defineConfig({
  12. root: './src',
  13. base: '/',
  14. resolve: {
  15. alias: {
  16. '@': paths.src,
  17. '@assets': paths.assets,
  18. },
  19. },
  20. build: {
  21. outDir: '../dist',
  22. minify: "esbuild",
  23. emptyOutDir: true,
  24. build: {
  25. rollupOptions: {
  26. output: {
  27. assetFileNames: (assetInfo) => {
  28. if (assetInfo.name.endsWith('.css')) return 'assets/[name][extname]';
  29. },
  30. },
  31. },
  32. }
  33. },
  34. plugins: [
  35. ViteMinifyPlugin({}),
  36. viteStaticCopy({
  37. targets: [
  38. {
  39. src: normalizePath(resolve(__dirname, 'src/assets/img/jobs/**/*')),
  40. dest: '',
  41. }
  42. ],
  43. structured: true
  44. })
  45. ],
  46. });