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

注释很详细,直接上代码

新增内容:
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. 进入触发预加载的页面后触发加载的页面信息会在控制台打印
相关推荐
前端小万20 小时前
写公众号赚了 3000 块后,我做了一款叫 "一键成稿" 的软件
前端·微信小程序
MoonMoonLee1 天前
小程序配置
小程序
拖孩1 天前
代码我能全交给 AI,流量主这 500 个访客它一个都替不了我
前端·后端·微信小程序
2501_916007471 天前
苹果商店iOS应用上架费用全面解析:开发者计划与审核费用计算
android·ios·小程序·https·uni-app·iphone·webview
JQweryuiop1 天前
中小型游戏陪练工作室数字化管理实践:基于七彩屋电竞护航小程序订单、履约与绩效系统的落地复盘
大数据·游戏·小程序·架构
Ai-_Man1 天前
您您这可以把Mistral AI的多个会话比如说。左侧的多个会话一次性导出吗?不是单条会话里面的多次会对话。
人工智能·ai·小程序·电脑
2501_916008891 天前
如何实现iOS App代码混淆:SwiftShield使用指南
android·ios·小程序·https·uni-app·iphone·webview
微擎应用市场1 天前
简单拼车小程序系统:实现出行与物流资源的高效精准匹配
小程序
甜到心里的蛋糕1 天前
如何用企业微信实现让微信收到通知实时通知
服务器·python·微信小程序·fastapi
2501_916008891 天前
怎么用 Godot 导出 iOS 应用并上架 App Store?签名字段该填什么?
android·ios·小程序·https·uni-app·iphone·webview