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

注释很详细,直接上代码

新增内容:
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. 进入触发预加载的页面后触发加载的页面信息会在控制台打印
相关推荐
李纲明15 小时前
微信小程序次卡跨店对不上账或前台随手改余次:先核流水只增不改与统一日切,再查冲正权限与总部只读
微信小程序·devdiy·核销流水·跨店次卡·日切对账·冲正权限·总部只读
李纲明18 小时前
微信小程序维修拆机后口头加价或未确认就开工:先核验机快照与报价确认,再查补充报价与取机核验
微信小程序·devdiy·维修验机·报价确认·报价快照·补充报价·取机核验
wx1qq1com19 小时前
一桩带几台车:共享租赁桩位配比、取电与结算闭环设计
物联网·微信小程序·小程序
李纲明20 小时前
微信小程序场地长租月底对不上或口头占场撞场:先核合约预约与核销流水出账,再查附加费与转租归属
微信小程序·devdiy·场地长租·月结账单·核销流水·附加费·转租归属
2401_8796925121 小时前
微信小程序照相与摄像功能实现——chooseImage 与 chooseVideo 详解
微信小程序·小程序·notepad++
律宏阔2 天前
微信小程序 + Taro + TDesign 去掉 [&&&],让普通 Tailwind 类接管局部样式
前端·微信小程序·taro
律宏阔2 天前
微信小程序 + Taro + 多语言实现与国际化检查实录
前端·微信小程序·taro
李纲明3 天前
微信小程序 getSystemInfo 提示已废弃、屏幕高度算错胶囊还对不齐?getWindowInfo 和 getDeviceInfo 怎么接才稳
javascript·微信小程序·小程序·小程序开发·devdiy
dreams_dream3 天前
微信小程序-使用npm包
微信小程序·小程序·npm
L1mbo3 天前
Lite模式 缓解微信开发者工具卡顿,附 uni-app 实践方案
前端·微信小程序