npm run build 报错:Some chunks are larger than 500 KB after minification

当我们的 Vue 项目太大,使用 npm run build 打包项目的时候,就有可能会遇到以下报错:

bash 复制代码
(!) Some chunks are larger than 500 kB after minification. Consider:
- Using dynamic import() to code-split the application
- Use build.rollupOptions.output.manualChunks to improve chunking: https://rollupjs.org/configuration-options/#output-manualchunks
- Adjust chunk size limit for this warning via build.chunkSizeWarningLimit.

以上根据官方的提示给出以下解决方案:

  1. 使用动态 import() 进行代码分割,减小每个 chunk 的大小

  2. 在 rollup 配置文件中添加 output.manualChunks,将模块拆分成多个 chunk,减小每个 chunk的大小

    javascript 复制代码
    //vite.config.js
    
    export default defineConfig({
        ...,
        rollupOptions:{
          output:{
            // 最小化拆分包
            manualChunks(id: any) {
              // 将 node_modules 中的依赖打包
              if (id.includes('node_modules')) {
                return id.toString().split('node_modules/')[1].split('/')[0].toString()
              }
              ...
            }
          }
        }
    })
  3. build.chunkSizeWarningLimit 中提高报错的阈值

    javascript 复制代码
    //vite.config.js
    
    export default defineConfig({
        ...,
        build: {
            chunkSizeWarningLimit: 1600
        }
    })

注意:以上解决方案可叠加执行

相关推荐
Dorcas_FE7 分钟前
【tips】动态el-form-item中校验的注意点
前端·javascript·vue.js
小小前端要继续努力10 分钟前
前端新人怎么更快的融入工作
前端
四岁爱上了她16 分钟前
input输入框焦点的获取和隐藏div,一个自定义的下拉选择
前端·javascript·vue.js
fouryears_2341738 分钟前
现代 Android 后台应用读取剪贴板最佳实践
android·前端·flutter·dart
boolean的主人42 分钟前
mac电脑安装nvm
前端
用户1972959188911 小时前
WKWebView的重定向(objective_c)
前端·ios
烟袅1 小时前
5 分钟把 Coze 智能体嵌入网页:原生 JS + Vite 极简方案
前端·javascript·llm
18你磊哥1 小时前
Django WEB 简单项目创建与结构讲解
前端·python·django·sqlite
KangJX1 小时前
iOS 语音房(拍卖房)开发实践
前端·前端框架·客户端
神秘的猪头1 小时前
🧠 深入理解 JavaScript Promise 与 `Promise.all`:从原型链到异步编程实战
前端·javascript·面试