微信小程序分包加载:

有时候我们的小程序太大,首次打开小程序的时候会比较慢,可以进行分包处理,按照功能的划分,拆分成几个分包,让用户在操作小程序的时候按需下载资源(用户在进入某些页面的时候才去下载相应的资源,加载这个功能对应的分包,使用分包可以加快小程序的速度,优化用户体验)。
对于用户来说,小程序加载流程变成了:

1.首次启动时,先下载小程序主包,显示主包内的页面;
2.如果用户进入了某个分包的页面,再下载这个对应分包,下载完毕后,显示分包的页面。 采用分包加载,对开发者而言,能使小程序有更大的代码体积,承载更多的功能与服务;而对用户而言,可以更快地打开小程序,同时在不影响启动速度前提下使用更多功能。

分包的划分

在配置前首先需要规划各个分包需要容纳的内容,建议按照功能划分的的原则,将同一个功能下的页面和逻辑放置于同一个目录下,对于一些跨功能之间公共逻辑,将其放置于主包下,这样可以确保在分包引用这部分功能时,这部分的逻辑一定存在。

在分包划分时,应该注意以下事项:

1、避免分包与分包之间引用上的耦合。因为分包的加载是由用户操作触发的,并不能确保某分包加载时,另外一个分包就一定存在,这个时候可能会导致 JS 逻辑异常的情况,例如报「“xxx.js” is not defined」这样的错误;
2、一些公共用到的自定义组件,需要放在主包内。
3、每一个包里的静态资源文件是相对封闭的,不能相互引用。
4、小程序定义的tabBar必须定义在程序的主包内。
5、每个包定义的root字段是独立的,A包的根目录不能在B包的子目录中。
6、subpackages字段的写法和subPackages是一样的,没有过分强调。
7、整个小程序所有分包大小不超过 8M,单个分包/主包大小不能超过 2M

分包的限制:

小程序代码有个2M限制,分包以后单独包最大不能超过2M;整个小程序可以达到8M

分包的配置:

  假设支持分包的小程序目录结构如下:开发者通过在 app.json subpackages 字段声明项目分包结构:

参考资料:

微信小程序官方分包文档

微信小程序分包加载,分包加载的优势相关推荐

  1. 微信小程序中高清图片替换加载策略

    微信小程序中高清图片替换加载策略 前言 一.基本思想 二.具体步骤 1.图片大小对比 2.代码流程 总结 前言 随着微信的不断发展,微信小程序凭借着它用户基数大,无下载安装等优点开始逐渐替代传统app ...

  2. 微信小程序 主包与分包的控制小程序大小

    微信小程序 主包与分包的控制大小 为了让用户有更好的体验,小程序于是限制包的大小为2M,在开发中,我们经常会出现内容过大的问题,于是要进行包的大小控制,分包就是一个很好的方式,小程序分包 的好处,分包 ...

  3. 微信小程序流量主广告怎么加圆角

    微信小程序流量主广告ad加圆角 广告标签外侧加一层view标签,给view设置圆角和overflow:hidden <view style="border-radius:20upx;o ...

  4. 页面加载成功后调用_在微信小程序里实现图片预加载组件

    网页中的图片预加载 我们知道在 Web 页面中实现图片的预加载其实很简单,通常的做法是在 JS 中使用 Image 对象即可,代码大致如下 var image = new Image() image. ...

  5. mfc cimage加载显示图片_在微信小程序里实现图片预加载组件

    网页中的图片预加载 我们知道在 Web 页面中实现图片的预加载其实很简单,通常的做法是在 JS 中使用 Image 对象即可,代码大致如下 var image = new Image() image. ...

  6. 微信小程序实现上拉分页加载数据

    文章目录 1. 实现上拉请求 2. 实现分页加载 3. 数据全部加载完成后阻止上拉刷新 4. 容易发送上拉刷新失败问题 微信小程序的上拉和下拉刷新是比较常见的功能,下拉刷新比较容易实现,这里说一下上拉 ...

  7. 微信小程序如何实现上拉加载更多数据?

    思路:在下拉到页面的时候我们可以进行数据请求,请求到在上次加载完毕的后五条数据 (举个例子),通过page(页码),count(加载数据得条数)与start进行联接,我们可以发现:start:(pag ...

  8. 微信小程序入门五上滑加载下拉刷新

    之前谈到文章列表的数据加载,是一次性全部加载,这样是不友好的.这章介绍加载和刷新. 效果图: 先介绍在IDE中,怎么模拟上滑这个操作.开始我是用鼠标点击文章列表,然后先上移动.结果一直没有结果,以为是 ...

  9. android 独立插件,最新反编译任何微信小程序,以及独立分包、插件的处理方式...

    本篇文章将详细讲解如何对线上的微信小程序进行解包反编译,并处理独立分包加载.插件等情况下的解决方法,最终获得他的源码以用来学习,没错,就是学习.

  10. 反编译任何微信小程序,以及独立分包、插件的处理方式

    本篇文章将详细讲解如何对线上的微信小程序进行解包反编译,并处理独立分包加载.插件等情况下的解决方法,最终获得他的源码以用来学习,没错,就是学习.

最新文章

  1. “买傅园慧送胡歌”,信息安全何以如此廉价
  2. 9.QT事件机制源码时序分析(上)
  3. 今天看到这篇新闻之后,决定休息一下咯
  4. 利用ajax作一实时日志系统查询模块,和感兴趣的同行交流一下!
  5. 机器学习:结点的实现,决策树代码实现(二)
  6. java写一个web聊天工具_javaweb写的在线聊天应用
  7. typedef 的四个用途和两大陷阱
  8. Oracle redo
  9. 树视图的属性与方法 c# 1614262746
  10. linux下Zlib的安装与使用
  11. 小程序使用echarts
  12. Android使用SeekBar
  13. python实现新闻网站_Python 教你 4 行代码开发新闻网站通用爬虫
  14. linux文件界面画面,Linux对比文件,很好用的图形界面
  15. const 成员函数
  16. 西门子S7系列中间人攻击:流量劫持和转发(一)
  17. C语言视频教程-谭浩强版-小甲鱼主讲—P2
  18. 基于Matlab的棋盘光栅的设计
  19. 加州大学戴维斯分校 计算机科学,美国王牌专业!加州大学戴维斯分校计算机科学专业等你来...
  20. matlab给定振形用图表示,基于 MATLAB 的简谐振动合成图形的动态演示

热门文章

  1. 回归算法以及源码分享
  2. js调java并传参_Js调用Java方法并互相传参的简单实例
  3. 存储器空间或者桌面堆_这款 Windows 桌面整理软件,让电脑充满高级感!
  4. 优化算法:人工蜂鸟算法AHA
  5. 流行的通讯库/消息中间件
  6. 把hao123网页用html写出来,hao123改版之用户体验
  7. 咔咕图聊!超级酷!让QQ文字立刻变图片!
  8. 咔咕(聊天工具)---免费绿色版,图片代替了文字
  9. CryENGINE 3: reaching the speed of light
  10. Spacebuilder可以做什么?