vite.config.js 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. import { defineConfig, loadEnv } from "vite";
  2. import vue from "@vitejs/plugin-vue";
  3. import { ViteImageOptimizer } from "vite-plugin-image-optimizer";
  4. import inject from "@rollup/plugin-inject";
  5. import path from "path";
  6. import commonjs from "vite-plugin-commonjs";
  7. import UnoCSS from "unocss/vite";
  8. function pathResolve(dir) {
  9. return path.resolve(process.cwd(), ".", dir);
  10. }
  11. // https://vitejs.dev/config/
  12. export default ({ mode }) =>
  13. defineConfig({
  14. base: loadEnv(mode, process.cwd()).VITE_PUBLIC_DIR,
  15. plugins: [
  16. vue(),
  17. UnoCSS(),
  18. commonjs(),
  19. // ViteImageOptimizer({
  20. // png: {
  21. // quality: 100,
  22. // },
  23. // jpg: {
  24. // quality: 100,
  25. // },
  26. // webp: {
  27. // quality: 80,
  28. // },
  29. // }),
  30. ],
  31. optimizeDeps: {
  32. include: ["fullPage"],
  33. },
  34. // build: {
  35. // commonjsOptions: {
  36. // transformMixedEsModules: true,
  37. // },
  38. // },
  39. resolve: {
  40. alias: {
  41. "@": path.resolve(__dirname, "src"),
  42. "##": path.resolve(__dirname, "src/assets"),
  43. "#": path.resolve(__dirname, "public"),
  44. fullPage: path.resolve(
  45. __dirname,
  46. "src/components/fullpage/extensions.js"
  47. ),
  48. },
  49. extensions: [
  50. ".mjs",
  51. ".js",
  52. ".ts",
  53. ".jsx",
  54. ".tsx",
  55. ".json",
  56. ".vue",
  57. ".webp",
  58. ],
  59. },
  60. });