微信小程序(十四)分包和分包预加载

注释很详细,直接上代码

新增内容:
1.分包的配置
2.分包预加载的写法

先说说为什么需要分包:

小程序追求小而快,主包的大小控制是小程序上线的硬性要求,分包有利于小程序优化加载速度

分包的注意事项:

  1. 单个分包大小不能超过2mb
  2. 分包不意味着可以无限增加,总包最大20mb
  3. tabBar不能在分包使用(应该也不会人没事把导航栏的页面塞分包里)
    源码:
    app.json
json 复制代码
{
    "pages": [
        "pages/icontest/icontest",
        "pages/form/form",
        "pages/index/index",
        "pages/testImg/testImg",
        "pages/logs/logs"
    ],
    "window": {
        "navigationBarTextStyle": "black",
        "navigationBarTitleText": "Weixin",
        "navigationBarBackgroundColor": "#ffffff"

    },
    //使用分包,可以多个分包,但每个分包
    "subpackages":[
    {
        "root":"indexPack",//分包根目录
        "pages":[//分包中包含的页面
            "pages/home/home",
            "pages/person/person"
        ]
    },
    {
        "root":"iconPack",
        "pages":[
            "pages/dog/dog",
            "pages/cat/cat"
        ]
    }
],
//分包预加载
"preloadRule":{
    "pages/icontest/icontest":{//触发预加载的页面
        "network": "all",//预加载的网络环境(建议all)
        "packages": ["iconPack"]//预加载的包
    }
},
    "style": "v2",
    "componentFramework": "glass-easel",
    "sitemapLocation": "sitemap.json",
    "lazyCodeLoading": "requiredComponents"
}

效果演示:

  1. 分包自动创建的文件

温馨提醒:如果删除已创建的分包文件夹而不修改 app.json 的内容,再次自动创建的文件则只有js和wxml
官方的解释是:"未复现。不过我们有一个逻辑,第一次创建出来的是默认都有json 和 wxss。但是,如果你删掉了页面对应的文件,但是又没有改 app.json 的话。第二次自动生成,是不会带 json 和 wxss 的,因为这两个文件是不必要的"
解决方法:要么自己手动新建,要么换名字,创建页面检查无误再ctrl+s保存代码,因为默认保存会自动生成

  1. 进入触发预加载的页面后触发加载的页面信息会在控制台打印
相关推荐
2501_915909062 分钟前
iOS 证书创建与管理 类型限制 p12 密码与云备份实操
android·ios·小程序·https·uni-app·iphone·webview
拖孩20 小时前
用 AI 重解千年观音灵签,做了一个微信小程序,每天摇一摇,命运给你回应
前端·后端·微信小程序
黄华SJ520it1 天前
顶俏洗衣液模式制度开发介绍:S2B2C社交分销+多门店核销系统全解析
前端·数据库·小程序·零售·系统开发
北极糊的狐1 天前
钉钉小程序报错data.formatTime is not a function是因为 axml 模板中不能直接调用 Page 内自定义方法!
java·小程序·钉钉
java1234_小锋1 天前
【免费】微信小程序网约车(打车,在线叫车,移动出行)系统(SpringBoot4+Vue3) 锋哥原创出品,必属精品
微信小程序·网约车·在线叫车·移动出行
show4332 天前
多格式导出怎么做?2026免费小程序TXT/SRT实践
开发语言·小程序·c#
AI砖家2 天前
AI编程—微信小程序开发规范
微信小程序·小程序·notepad++·ai编程
show4332 天前
2026小程序端视频转文字技术对比:识别引擎精度实测
小程序·音视频
sam-zy3 天前
微信小程序+ESP8266+Arduino 开发智能插座,有本地OTA功能
微信小程序·小程序
A24207349303 天前
微信小程序开发:常用基础语法与指令详解
微信小程序·小程序·notepad++