nuxt.config.ts 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. import AutoImport from "unplugin-auto-import/vite";
  2. import Components from "unplugin-vue-components/vite";
  3. import { ElementPlusResolver } from "unplugin-vue-components/resolvers";
  4. // import { visualizer } from 'rollup-plugin-visualizer'
  5. export default defineNuxtConfig({
  6. css: [
  7. "@/assets/style/variable.scss",
  8. "@/assets/style/reset.scss",
  9. "@/assets/style/base.scss",
  10. "@/assets/iconfont/iconfont.css",
  11. "element-plus/dist/index.css",
  12. ],
  13. modules: ["@pinia/nuxt"],
  14. vite: {
  15. // cacheDir: ".vite-cache", // 指定 vite 缓存位置(默认就是这个)
  16. css: {
  17. preprocessorOptions: {
  18. scss: {
  19. additionalData: '@use "@/assets/style/theme.scss" as *;',
  20. quietDeps: true, // 禁用 Deprecation Warning
  21. },
  22. },
  23. },
  24. plugins: [
  25. AutoImport({
  26. resolvers: [ElementPlusResolver()],
  27. }),
  28. Components({
  29. resolvers: [ElementPlusResolver()],
  30. }),
  31. ],
  32. server: {
  33. proxy: {
  34. "/api": {
  35. target: "http://54.46.9.88:8001/",
  36. changeOrigin: true,
  37. rewrite: (path) => path.replace(/^\/api/, ""),
  38. },
  39. },
  40. hmr: {
  41. overlay: false, // 关闭 HMR 警告/错误弹窗
  42. },
  43. },
  44. // 👇 开发环境强制打成一个 chunk
  45. build:
  46. process.env.NODE_ENV === "development"
  47. ? {
  48. rollupOptions: {
  49. output: {
  50. manualChunks: () => "index.js", // 所有打进一个 chunk
  51. },
  52. },
  53. }
  54. : undefined
  55. // build: {
  56. // rollupOptions: {
  57. // plugins: [
  58. // visualizer({ open: true }),
  59. // ],
  60. // },
  61. // },
  62. },
  63. runtimeConfig: {},
  64. app: {
  65. head: {
  66. htmlAttrs: {
  67. lang: "en",
  68. },
  69. },
  70. },
  71. // plugins: ["~/plugins/vue-warn-handler.js"],
  72. build: {
  73. // transpile: ["element-plus"],
  74. },
  75. });