vite.config.js 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  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. import autoprefixer from 'autoprefixer';
  9. function pathResolve(dir) {
  10. return path.resolve(process.cwd(), ".", dir);
  11. }
  12. // https://vitejs.dev/config/
  13. export default ({ mode }) =>
  14. defineConfig({
  15. base: loadEnv(mode, process.cwd()).VITE_PUBLIC_DIR,
  16. server: {
  17. port: 3611,
  18. },
  19. plugins: [
  20. vue(),
  21. UnoCSS(),
  22. commonjs(),
  23. // ViteImageOptimizer({
  24. // png: {
  25. // quality: 100,
  26. // },
  27. // jpg: {
  28. // quality: 100,
  29. // },
  30. // webp: {
  31. // quality: 80,
  32. // },
  33. // }),
  34. ],
  35. optimizeDeps: {
  36. include: ["fullPage"],
  37. },
  38. css: {
  39. postcss: {
  40. plugins: [
  41. autoprefixer()
  42. ]
  43. }
  44. },
  45. // build: {
  46. // commonjsOptions: {
  47. // transformMixedEsModules: true,
  48. // },
  49. // },
  50. resolve: {
  51. alias: {
  52. "@": path.resolve(__dirname, "src"),
  53. "##": path.resolve(__dirname, "src/assets"),
  54. "#": path.resolve(__dirname, "public"),
  55. fullPage: path.resolve(
  56. __dirname,
  57. "src/components/fullpage/extensions.js"
  58. ),
  59. },
  60. extensions: [
  61. ".mjs",
  62. ".js",
  63. ".ts",
  64. ".jsx",
  65. ".tsx",
  66. ".json",
  67. ".vue",
  68. ".webp",
  69. ],
  70. },
  71. });