From bf3860750cc4e514ea51ceed5cbed3e66f06e104 Mon Sep 17 00:00:00 2001 From: hwj Date: Mon, 13 Jul 2026 18:11:27 +0800 Subject: [PATCH] =?UTF-8?q?perf=EF=BC=9A=E9=A6=96=E5=B1=8F=E5=8A=A0?= =?UTF-8?q?=E8=BD=BD=E5=B1=8F=E8=94=BDvue-plugin-hiprint?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- vite.config.ts | 28 ++++++++++++++++++++++------ 1 file changed, 22 insertions(+), 6 deletions(-) diff --git a/vite.config.ts b/vite.config.ts index e0b76f50..269c765c 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -86,15 +86,31 @@ export default ({command, mode}: ConfigEnv): UserConfig => { if (!id.includes('node_modules')) { return } - // 注意:hiprint、form-create、wangeditor、echarts、cropperjs 等仅被懒加载页面使用的依赖 - // 不在此处手动分组。手动分组会让它们被提升为入口级共享 chunk 并注入首屏 modulepreload, - // 从而在首屏被抢先加载造成阻塞。交给 Rollup 自动处理,它们会跟随对应的异步路由 chunk 按需加载。 - - // Element Plus 组件库(首屏依赖,拆分便于并行加载与缓存) + // 打印插件(体积最大,内含 jQuery 等),单独拆分 + if (id.includes('vue-plugin-hiprint')) { + return 'hiprint' + } + // 表单设计器 / 表单渲染 + if (id.includes('@form-create')) { + return 'form-create' + } + // 富文本编辑器 + if (id.includes('@wangeditor')) { + return 'wangeditor' + } + // 图表库(含词云、底层 zrender) + if (id.includes('echarts') || id.includes('zrender')) { + return 'echarts' + } + // 图片裁剪 + if (id.includes('cropperjs')) { + return 'cropperjs' + } + // Element Plus 组件库 if (id.includes('element-plus') || id.includes('@element-plus')) { return 'element-plus' } - // Vue 全家桶(首屏依赖) + // Vue 全家桶 if ( id.includes('/vue/') || id.includes('/vue-router/') ||