使用uniapp在打包微信小程序时主包和vendor.js过大(uniCloud的插件分包)

这篇具有很好参考价值的文章主要介绍了使用uniapp在打包微信小程序时主包和vendor.js过大(uniCloud的插件分包)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.问题描述

正常的的微信小程序在编译后,主包应保持在2MB左右(限制最大2MB),其余的文件通过分包来进行加载

uniapp vendor.js 包过大,uni-app,uniCloud,微信小程序,javascript,uni-app

 但是有的情况下,微信小程序的主包能达到3MB,vendor.js会达到1.5MB

uniapp vendor.js 包过大,uni-app,uniCloud,微信小程序,javascript,uni-app

 2.问题解决

当你发现的你的微信vendor.js只有1个文件夹,且这个文件非常大时,首先需要检查manifest.json

在这个文件夹下的源码视图中,在这个文件下的mp-weixin节点有个optimization

uniapp vendor.js 包过大,uni-app,uniCloud,微信小程序,javascript,uni-app

 optimization下的subPackages节点时用来控制微信分包的,需要将此节点设为true

"optimization" : {
    "subPackages" : true
}

一般的微信小程序设置这个节点就能够解决

但是如果你的微信小程序在uni_modles下引入了非常多的uni插件,比如说:uni-id-pages,uni-im,uSearch,uni-pay等uni全家桶

这些页面默认都会在主包里,因为uni_modules是主包,所以该目录下的uni-id-pages和uni-im页面也会打包到主包里(主包里面的vendor.js会打包所有主包里面的页面与插件的js文件),所以导致了主包里面的vendor.js在分包打包后依旧过大

这时就需要我们把你项目中引用的插件也进行分包(uni-id-pages和uni-im引入时在uni_modules下)

uniapp vendor.js 包过大,uni-app,uniCloud,微信小程序,javascript,uni-app

在pagesjson中添加分包信息,将在主包中注册的插件的页面都移动到此分包中

uniapp vendor.js 包过大,uni-app,uniCloud,微信小程序,javascript,uni-app

 通过查找替换功能,将uni-id-pages等插件的路径由“uni_modules/uni-id-pages”替换为“subpackageuni/uni-id-pages”

不建议直接把uni_modules直接分包,因为其中可能包含其它组件,这些组件最好注册在主包中注册,因为子包不能引用子包的插件,所以插件如果在子包中,就只有子包中才能引用

uniapp vendor.js 包过大,uni-app,uniCloud,微信小程序,javascript,uni-app

 同理,将uni-id-pages等插件分包后,这些插件就不适用与uni-app的组件规则,就需要我们手动去引入

在uni-id-pages下有如下的组件,这些组件在经过分包之后,只能在子包内才能访问,而通过uniapp的组件引入是通过easycom组件规范来引入的,详细见如下链接:

组件使用的入门教程 | uni-app官网

uniapp vendor.js 包过大,uni-app,uniCloud,微信小程序,javascript,uni-app

 因此这些组件需要通过vue语法引入到页面(必须要在子包内引入,因为你如果把这些组件都通过注册全局组件来引入,那么到头来还是会增加vendor.js的大小,因为vendor.js会引入全局组件)

通过vue语法,将所有的组件导入到所有的页面(为了方便)

uniapp vendor.js 包过大,uni-app,uniCloud,微信小程序,javascript,uni-app

 每个页面都把这些组件复制一遍即可

uniapp vendor.js 包过大,uni-app,uniCloud,微信小程序,javascript,uni-app

 最后再进行分包你就会发现主包的vendor.js明显小了

uniapp vendor.js 包过大,uni-app,uniCloud,微信小程序,javascript,uni-app

 而由于把uni-id-pages和uni-im进行了分包,分包中的vendor.js明显变大(这样就把以前位于主包的vendor.js打包到了分包中)

uniapp vendor.js 包过大,uni-app,uniCloud,微信小程序,javascript,uni-app

 文章来源地址https://www.toymoban.com/news/detail-782168.html

 

 

到了这里,关于使用uniapp在打包微信小程序时主包和vendor.js过大(uniCloud的插件分包)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 微信小程序中主包和分包过大,详解分包问题

    哈喽,大家好呀!小韵携原创博文给大家请安啦! 前言 :开发微信小程序时,若项目比较大,必定要分包,当项目过于大时,则需要细致、谨慎地对项目进行分包优化和精简,这是一个不可避免地问题,网上的大多数分包优化都是针对于小项目的普通官方分包优化,并未将

    2024年02月08日
    浏览(51)
  • uniapp使用uview主包体积过大(面向微信小程序)

    本人的是使用Hbuilder x进行的开发uniapp转微信小程序项目 使用前:    使用后: 整个爱住~(。≧3≦)ノ⌒☆!!!  友情提示 这个压缩可能会导致你代码热更新变慢,所以你开发的时候 不上传代码的时候 把这个勾东西关掉

    2024年02月11日
    浏览(60)
  • 微信小程序主包超2M打包发布成功等相关配置

    期望通过每一次分享,让技术的门槛变低,落地更容易。 —— around 作者公司开发了一个小程序,经过几个版本的迭代,大小超过了2M,研发主要使用的组件是uni-app,前面几个版本包大了我们添加了 optimization.subPackages=true 的配置,并给不同功能页面完成了分包,到此解决第一

    2024年02月11日
    浏览(46)
  • uniapp编译微信小程序主包过大无法上传进行分包优化步骤

    uniapp编译微信小程序主包过大无法上传进行分包优化步骤: 首先是在uniapp项目中的 manifest.json 文件中找到 源码视图 ,进去之后在微信小程序相关 mp-weixin 之下进行开启分包优化的相关配置: 开始新建项目目录,新建一个跟pages同等级的文件夹,然后把想要分包的文件 先复制

    2024年02月11日
    浏览(52)
  • 使用Uniapp运行、打包、发布微信小程序

    1、HBuilder X 打开项目,运行到微信开发者工具,此时会唤起微信开发者工具 2、打包,运行------小程序-微信, 打包中  打包后的文件 3、打包完成后,在小程序开发工具中点击右上角------点击上传 点击上传   4、到小程序后台就可以看到了。测试需要设为体验版,然后测试后

    2024年02月16日
    浏览(47)
  • uniapp开发微信小程序,主包(分包超过限制)

    嘀嘀嘀  ~  和大家分享一下  最近的uniapp开发微信小程序  在真机调试 或者在上传的时候 提示主包或者分包 大小超过限制   首先和大家说一下  微信小程序  主包限制不能超过2M     分包一共不能超过8M(好像是记不太清了) 然后具体解决优化步骤如下, 1.   将主包进

    2024年02月15日
    浏览(51)
  • uniapp打包微信小程序,包过大解决

    微信小程序每个分包的大小是2M,总体积一共不能超过20M。 字节小程序每个分包的大小是2M,总体积一共不能超过16M(字节小程序基础库 1.88.0 及以上版本开始支持,字节小程序开发者工具请使用大于等于 2.0.6 且小于 3.0.0 的版本)。 在对应平台的配置下添加 \\\"optimization\\\":{\\\"su

    2024年02月08日
    浏览(71)
  • uniapp 微信小程序 分包打包流程出现的问题

    uniapp 微信小程序  URL:小程序性能优化指南 | 微信开放社区   主包只能2M,太小啦 举个例子 比如公司就是一个项目(小于20M),新来的同事就是一个文件吧,随着公司的人越来越多(项目也就是主包大于2M),就需要划分部门,每个部门就可以理解为一个分包。  URL:使用分包

    2024年02月09日
    浏览(78)
  • uniapp项目打包(安卓apk和微信小程序)

    uniapp的打包方式有很多,这里主要讲解App打包成安卓apk和微信小程序的两种方式 原生App分为云打包和本地打包两种,一般只推荐使用云打包来快速打包成安卓apk 安卓正式包 勾选使用云端证书时,我们无需手动生成证书别名、证书私钥密码、证书文件等,uniapp官方已配置好云

    2024年02月03日
    浏览(86)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包