Skip to content

【探讨】关于 vitewebpack 的分包优化的探讨 #5025

@Vanisper

Description

@Vanisper

引语

  1. 以下是uniapp2, 也就是基于webpack打包的vue2版本的分包优化策略的详细实现

    Object.keys(process.UNI_SUBPACKAGES).forEach(root => {

  2. 以下是基于vite打包的vue3版本的rollup的打包配置

TODO: 此处代码是有待优化的地方

function createMoveToVendorChunkFn(): GetManualChunk {

问题

本人的项目(uniapp-vue3版本)在小程序这边的包大小已经到了一个瓶颈阶段,该分包的都分包了,公共组件也是尽可能的少了;

甚至魔改了uniapp的源码实现了小程序那边支持的异步分包功能,实现了主包异步引用分包组件的能力;

但是随着业务功能的增多,以上分包优化策略已不满足,小程序发版受到严重的影响,急需实现与vue2版本的分包优化一致功能。

探讨

本人研究了uniapp2版本的webpack的分包优化的具体实现,正在尝试对vite的分包优化进行实现(此工作正在进行中,突发奇想发个issue想知道官方有没有考虑这一块)。

不知官方对此处rollup的打包配置有没有什么指导性的建议,以实现与vue2版本的一样的分包优化的效果。

问题整理

https://github.com/Vanisper/uniapp-bundle-optimizer 我做的分包优化解决方案的一个整理,请阅读readme指引操作。

研究成果

现在已经将研究成果插件化并发布至npm市场了,见https://github.com/uni-ku/bundle-optimizer

Metadata

Metadata

Assignees

Labels

Good!完整的提问完整的提问 full infompmini programquestionFurther information is requested

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions