微信小程序 - 分包加载(独立分包)
独立分包是小程序中一种特殊类型的分包,可以独立于主包和其他分包运行。从独立分包中页面进入小程序时,不需要下载主包。当用户进入普通分包或主包内页面时,主包才会被下载
将某些具有一定功能独立性的页面配置到独立分包中可以提高加载速度,一个小程序中可以有多个独立分包
配置很简单,加关键字“independent:true”
分包限制
1.独立分包属于分包的一种。普通分包的所有限制都对独立分包有效
2.独立分包中不能依赖主包和其他分包中的内容,包括js文件、template、wxss、自定义组件、插件等。主包中的app.wxss
对独立分包无效,应避免在独立分包页面中使用 app.wxss
中的样式
3.App
只能在主包内定义,独立分包中不能定义 App
,会造成无法预期的行为;
4.独立分包中暂时不支持使用插件。
注意事项
1.getApp()无法获取app实例,无法实现独立分包和小程序其他部分的全局变量共享
为了在独立分包中满足这一需求,基础库 2.2.4 版本开始 getApp
支持 allowDefault
参数,在 App
未定义时返回一个默认实现。当主包加载,App
被注册时,默认实现中定义的属性会被覆盖合并到真正的 App
中
2.关于生命周期
当从独立分包启动小程序时,主包中 App
的 onLaunch
和首次 onShow
会在从独立分包页面首次进入主包或其他普通分包页面时调用。
由于独立分包中无法定义 App
,小程序生命周期的监听可以使用 wx.onAppShow
,wx.onAppHide
完成。App
上的其他事件可以使用 wx.onError
,wx.onPageNotFound
监听。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 25岁的心里话
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现