前言:uni_modules里面的插件会全部打包在主包里,分包如果都是引用了uni_modules的插件,那么会导致包体积越来越大。
我的项目主要用到一些组件库,如uview,对这个库的依赖太严重了,加上是把2个小程序融合到一起,所以对这个库的依赖就会变得更多。
解决方案:你的小程序是用uniapp开发,才能使用这个方法,在Hbuilder X工具顶部导航栏找到【发行】==》小程序-微信(仅适用于uniapp)。
使用这个方法可以进一步压缩小程序的代码,
并且它会把打包好的文件放在项目根目录的另一个路径里面,
比如用Hbuilder X运行小程序是会打包在xxx\unpackage\dist\dev\mp-weixin里面,
而用上面那个方法会被打包在xxx\unpackage\dist\build\mp-weixin里面,就差别在一个是dev,一个是build。
我原本打包时是包体积超过了3900k,而实际上要2M以内才行,尽管我使用了这个方案当并没有彻底解决我的问题。
这个方案一般可以解决稍微超出2M的包,对于超过3M以上的还是只能起到辅助的作用,so,最根本的方法还得是减少对依赖的引用,对于一些简单的组件那就自己手写,从而替换掉依赖。
还有就是你的全局样式不要写入过多的全局样式,且不要存在重复的样式,因为这些样式会全部被打包,不管你有没有引用,它会出现在每一个页面的wxss里面,
我就是在global.scss里面又引入了一个全局样式表导致出现了重复的样式,所以尽量使用必要的全局样式,不必要的就不要放在全局样式文件里面。
除此之外,该分包的还是的分包,体积大的静态资源文件该放到线上还是得要放到线上,微信官方建议不要在本地存储超过200k的静态资源文件。
最后:其实有一种方法(easycom)可以把uni_modules的插件放到分包里,这样就不会占用主包的空间,就是得满足它的组件路径规范,而且得把用到该插件的页面放到分包里去。
easycom的说明文档
标签:uniapp,插件,--,微信,09,modules,样式,uni From: https://www.cnblogs.com/iuniko/p/17689365.html