快捷搜索: 王者荣耀 脱发

uniapp发布到微信小程序:分包、删减代码全过程

0. 前言

1. 分包

2. 静态资源使用url形式引入(可放在云服务空间)

注意:

    tabbar的icon不能使用url 部分主包的资源不能使用url加载

推荐使用 ,云服务空间有10G免费容量。 将资源上传到云服务空间,然后点击详情可以看到url~ 附一张uniapp官方教程里关于阿里云服务空间的描述~

3. 删除多余组件

如果此时还是超出限制,那就要有针对性地删除组件了。。。

    可以只分析主包,但是建议其它包也删减一下~ 如果发现有些比较大的文件,是小程序端用不到的,那可以直接删了 (仅参考)其实我刚开始的策略是,全局搜索组件名—uni_modules的组件名可以在每个组件的readme看到, 如果没有被其它vue代码引用,并且没有被其它组件引用(changelog.md和readme.md都不算) 依赖也不算,都不是真正用到这个组件(依赖需要把这行删掉,如图) 此处就会遇到一个问题,假如一个底层组件A(文件较大,例如uni_row)并没有用到,但是被封装后的B用到了,实际上B也用不到,这时全局搜索A(根据代码依赖)的时候,发现B里有A,不敢删A。。。其实如果先全局搜索B,发现B没有被引用,删掉B,再全局搜索A,A也没有被引用,就可以都删掉了。。。(所以,还是要一点点删代码才知道具体的依赖情况;或者一层一层的搜,搜A,发现只有B依赖,继续搜B,如果没依赖皆大欢喜直接删,如果有…继续… 经个人测试,如果全局搜到5或6个文件相关时,比较安全,大概率可以删除 ) 不能发视频相关: 不能发音乐相关: 体验版:

4. 调整布局

经过上述操作,如果发现缩到2M还是很困难,可以选择调整布局,把四个tabber改成三个。。。改前:好悲桑不想改嘤嘤嘤。。。改后:啊~真香 调整布局后,就可以把一整个tabber的内容移到分包里~

5. 删除冗余代码

emm如果现在,你的主包还是超过2M,那可能需要改动代码了。。。(慎重慎重慎重!当然如果评论区有其它方法,bz收到后会及时更新哒~)

6. 结束

走到这一步,bz的主包已经从3989K降到2085K啦!把一个背景图,直接换成简易的css样式,就大功告成啦! 不知道小伙伴有没有这么幸运哈哈哈哈~

7.尾声

    (小白可参考)移动uni_modules里的组件到分包M,M里有一个vue文件要引用这个组件,如果代码不改,发现引用失败,此时:在script里import一下,然后再components里注册一下: 再强调一下:如果是个人开发者而不是企业开发者,是不运行发布视频和音频的!!! bz不敢骂 ,只能劝解小伙伴们多注意~ 小伙伴们如果有更好的删减demo的方法,欢迎评论区评论呀~
经验分享 程序员 微信小程序 职场和发展