微信小程序如何进行分包,两兆变20,单车变摩托

news/2024/7/20 1:17:34 标签: 小程序, 前端

工程优化

1.分包

某些情况下,开发者需要将小程序划分成不同的子包,在构建时打包成不同的分包,用户在使用时按需进行加载。每个使用分包小程序必定含有一个主包。所谓的主包,即放置默认启动页面/TabBar 页面,以及一些所有分包都需用到公共资源/JS 脚本;而分包则是根据开发者的配置进行划分。直接进入分包,也会下载主包

主包:tabber页面 app.js app.json。。。

普通分包:按需加载,可以使用主包的数据

独立分包:按需加载,不可以使用主包数据

优势

1.在小程序启动时,默认会下载主包并启动主包内页面,当用户进入分包内某个页面时,客户端会把对应分包下载下来,下载完成后再进行展示。(按需加载)
2.单个分包/主包大小不能超过 2M,整个小程序所有分包大小不超过 20M,能够将工程大小扩充到20M
3.对小程序进行分包,可以优化小程序首次启动的下载时间,以及在多团队共同开发时可以更好的解耦协作。

指南-基础能力-分包结构

1.1.配置分包结构 app.json

  "subPackages": [
    {
      "root": "packageA",
      "pages": [
        "apple/apple"
      ]
    },{
      "root": "packageB",
      "pages": [
        "dog/dog"
      ]
    }
  ],

1.2.独立分包

app.json
"subPackages": [
    {
      "root": "packageA",
      "name":"A",
      "pages": [
        "apple/apple"
      ]
    },{
      "root": "packageB",
      "pages": [
        "dog/dog"
      ],
      "independent": true  //配置独立分包
    }
  ],
独立分包不依赖于别的分包或者主包,默认无法使用app.js 的数据
独立分包的js文件
let app = getApp({allowDefault:true})
// 默认实现中定义的属性会被覆盖合并到App中
app.age="30"
console.log("packageB-dog",app)

1.3.分包预下载 app.json

  "preloadRule": {
    "pages/index1/index1":{
      "packages":["A"],  // 配置分包时的name名字
      "network": "all"   // network 什么网络下进行预加载  wifi  all
    }
  },

http://www.niftyadmin.cn/n/508966.html

相关文章

java计算器做连续运算_苹果、华为、小米手机计算器都阵亡?10%+10%=0.11?原来这个逻辑...

最近大量网友反馈称,苹果、华为、小米、OPPO等智能手机上自带的计算器计算10%10%0.11,而不是等于0.2。快看看你手机上的计算器能算出10%10%0.2不?据说只有中兴旗下努比亚、魅族、联想等手机能算出10%10%0.2。这到底是怎么啦?&…

微信小程序、微信低版本兼容

基础库低版本兼容 小程序的功能不断的增加,但是旧版本的微信客户端并不支持新功能,所以在使用这些新能力的时候需要做兼容。 1版本号比较 js_getuserinfo() {// 4 13// 2.10.4// 获取到用户的客户端基础库版本let version wx.getSystemInfoSync()con…

pcb变压器厂家_永创星:勇攀高峰 开创平面变压器新局面

来源:大比特商务网 作者:阮辞随着5G、8K等多个应用市场的到来,电子变压器作为电源设计中最关键元器件,正面临着严峻挑战。在技术革新的前提下,深圳市永创星科技有限公司(以下简称“永创星”)超薄平面变压器登上了历史的…

如何让微信小程序上线

小程序发布 1.配置服务器 设置-开发设置-配置服务器域名:2.上传发布 1、上线前配置服务器域名 域名要求:协议必须是https的协议,域名被解析过的 2、点击开发者工具的上传按钮,进入后台,版本管理,开发版本…

c# 接收网络汉字乱码_socket网络编程中,从c++的服务端发送一段中文到c#的客户端,为什么接收的中文乱码了?...

展开全部#include #include #include std::string GBKToUTF8(const std::string& strGBK){std::string strOutUTF8 "";WCHAR * str1;int n MultiByteToWideChar(CP_ACP, 0, strGBK.c_str(), -1, NULL, 0);str1 new WCHAR[n];MultiByteToWideChar(CP_ACP, 0, s…

微信小程序,骨架屏的使用。简单两步,瞬间高大上

骨架屏使用 骨架屏是页面的一个空白版本,通常会在页面完全渲染之前,通过一些灰色的区块大致勾勒出轮廓,待数据加载完成后,再替换成真实的内容。通常在小程序中,我们需要手工维护骨架屏的代码,当业务变更时&…

一套代码编到10个平台,这不是梦想。眼见为实(最详细的uni-app详解)(还有第二篇补充)

框架概述 1.uni-app概述 uni-app 是一个使用 Vue.js 开发所有前端应用的框架,开发者编写一套代码,可发布到iOS、Android、Web(响应式)、以及各种小程序(微信/支付宝/百度/头条/QQ/钉钉/淘宝)、快应用等多…

ip68级防水可以泡多久_华为申请防尘防水新专利,性能或超越IP68

手机防水一直是用户的一个痛点,虽然在平常用不上,感知也不强,但到了关键时候却能保住手机一条命。如今的智能手机因为成本原因大多数没有防水功能,有的也基本局限于高端旗舰手机。在几年之前,智能手机防尘防水等级一般…