小程序分包和预加载
一、目的
分包的目的:
提升小程序的首屏加载速度,其原理和PC端网页的路由懒加载非常类似。即当我们第一个打开一个小程序的时候,只加载主包以及一些公共的资源,当调到某个页面的时候,在加载该页面所在的分包,目前微信小程序,总包大小不操作20M,分包的各种不超过10个,每个大小不超过2M。
预加载:预先加载的意思,进一步提示小程序的渲染速度。
二、分包
uniapp 实现分包:
1、在manifest.json文件中开启分包模式
/* 小程序特有相关 */"mp-weixin": {"optimization": {"subPackages": true}},
2、针对每个分包建立独立的文件夹,文件夹里面一般包含 pages/static 两个文件夹,分别用于存放当前分包的页面和静态资源(图片)

3、在pages.json中声明分包的结构
//声明分包结构"subPackages": [//数组中的一个对象就对应着一个分包{"root": "goods-package",//分包的文件夹的名称//该分包中的页面路径"pages": [{"needLogin": false,"path": "pages/goodDetail/goodDetail"}]},],
在微信开发者工具中可以看到分包的结构
原生小程序分包:
1、配置 app.json 文件
{"pages": [// 主包里面的页面路径配置"pages/tabBar/index/index","pages/login/adminLogin/login",...],"subpackages": [// 分包的配置{"root": "plateMake", // 分包包名"name": "车牌预约","pages": [// 分包的页面配置"views/index/index",...]},... // 其他分包配置]// 省略其他...
}
写完分包之后,如果对应的文件夹和页面不存在,它会自动创建文件夹和页面。
其他设置及页面同 uniapp 的一样
三、预加载
uniapp:
在pages.json中配置
"preloadRule":{//key(在哪个页面中需要做分包的预加载):value(预加载的一些配置)"pages/category/category":{"network": "all","packages": ["goods-package"]//需要预加载的分包}
},
原生开发:
在 app.json 增加 preloadRule 配置来控制。
{"pages": ["pages/tabBar/index/index",...],"subpackages": [{"root": "plateMake","name": "车牌预约","pages": ["views/index/index",...]},{"root": "indep","pages": ["index"],"independent": true}],"preloadRule": {"pages/tabBar/index/index": {"network": "all","packages": ["important"]},"indep/index": {"packages": ["__APP__"]}}
}
preloadRule 中,key 是页面路径,value 是进入此页面的预下载配置,每个配置有以下几项:
| 字段 | 类型 | 必填 | 默认值 | 说明 |
|---|---|---|---|---|
| packages | StringArray | 是 | 无 | 进入页面后预下载分包的 root 或 name。__APP__ 表示主包。 |
| network | String | 否 | wifi | 在指定网络下预下载,可选值为:all: 不限网络wifi: 仅wifi下预下载 |
限制
同一个分包中的页面享有共同的预下载大小限额 2M,限额会在工具中打包时校验。
如,页面 A 和 B 都在同一个分包中,A 中预下载总大小 0.5M 的分包,B中最多只能预下载总大小 1.5M 的分包。
相关文章:
小程序分包和预加载
一、目的 分包的目的: 提升小程序的首屏加载速度,其原理和PC端网页的路由懒加载非常类似。即当我们第一个打开一个小程序的时候,只加载主包以及一些公共的资源,当调到某个页面的时候,在加载该页面所在的分包…...
【MATLAB 串口调试+虚拟串口测试】
文章目录 前言一、matlab 串口二、测试串口1.从系统中获取串口号2.避免串口打开被占用3. 安装虚拟串口4. 打开串口助手和MATALB 进行测试 总结 前言 提示:这里可以添加本文要记录的大概内容: 项目需要: 提示:以下是本篇文章正文…...
mac 安装最新版nginx
1. clone最新版本源代码: git clone https://github.com/nginx/nginx.git 2. 下载PCRE 没有PCRE那我们就下,下载地址:https://sourceforge.net/projects/pcre/files/pcre/,笔者下载的pcre-8.45.zip,下载之后解压到ngi…...
极氪汽车困局:营销频繁车、产品力不足
“ 极氪汽车的“车上吃火锅”营销活动虽登上热搜,但因频繁忽视老用户和产品力不足的争议,并未赢得消费者好感,反而加剧负面印象。 ” 科技新知 原创 作者丨颜瞾 编辑丨蕨影 近日,背靠吉利集团的极氪…...
Icecream 与 Python 日志库及性能分析整合指南
简介 Icecream 是一个用于简化 Python 调试过程的库,它允许开发者轻松打印变量名和它们的值。Python 的 logging 库则提供了一个强大的日志记录系统,用于跟踪应用程序的运行情况。而性能分析则是评估代码执行效率的重要手段。本指南将介绍如何将 Icecre…...
请解读下面的程序:pat =re.compile(r‘\d+‘)res = pat.search(‘www.ddd996.com‘)res.group()
请解读下面的程序: pat re.compile(r\d) res pat.search(www.ddd996.com) res.group() 这段程序使用了正则表达式模块re来搜索字符串中的数字。首先,通过re.compile函数创建了一个正则表达式对象pat,该正则表达式是r\d,意味着匹…...
Fibonacci任意一位的值得算法
csDP写法 using System; class Program {static void Main(string[] args){Console.WriteLine("请输入一个非负整数:");// 读取用户输入while(true){string input Console.ReadLine();int n Convert.ToInt32(input);if (n < 0){Console.WriteLine(&…...
gbn,sr和tcp的区别
这是关于三种不同协议(GBN、SR、TCP)处理传输时序和丢包的行为比较。我们可以分别填充并解释它们的处理机制: GBN(Go-Back-N)协议: 类型发送方的计时器保存的是啥接收方收到失序的分组怎么办超时的时候发…...
FastGPT本地开发 之 通过Navicat管理MongoDB、PostgreSQL数据库
1. 背景 前期已经完成FastGPT的本地化部署工作,通过Docker启动FastGPT的相关容器即可运行。(共6个容器) 2.本地化开发 2.1 前置依赖 2.2 源码拉取 git clone gitgithub.com:labring/FastGPT.git2.3 数据库管理 本地化运行的FastGPT使用…...
hardhat部署智能合约
Hardhat安装 安装node 可以使用 nvm 安装node GitHub - nvm-sh/nvm: Node Version Manager - POSIX-compliant bash script to manage multiple active node.js versions 安装Hardhat 打开命令行工具,输入: mkdir hardhat-demo cd hardhat-demo npm i…...
界面控件DevExtreme中文教程 - 如何与Amazon S3和Azure Blob存储集成?
DevExtreme拥有高性能的HTML5 / JavaScript小部件集合,使您可以利用现代Web开发堆栈(包括React,Angular,ASP.NET Core,jQuery,Knockout等)构建交互式的Web应用程序。从Angular和Reac,…...
【ERROR】ubuntu source: not found
Ubuntu 24.04.1 LTS系统设置环境变量,执行 source ~/.bashrc出现错误: source command not found 解决方案:不需要处理( echo 以下你的环境变量,发现是生效的),ubantu系统 中 /bin/sh 通常链接到 dash,这…...
聚焦IOC容器刷新环节postProcessBeanFactory(BeanFactory后置处理)专项
目录 一、IOC容器的刷新环节快速回顾 二、postProcessBeanFactory源码展示分析 (一)模版方法postProcessBeanFactory (二)AnnotationConfigServletWebServerApplicationContext 调用父类的 postProcessBeanFactory 包扫描 …...
配置nginx服务通过ip访问多网站
过程概要 1.前提配置 关防火墙 关selinux 2.安装web服务程序nginx 3.查看nginx是否开启 4.为当前主机添加多地址(ip a) 5.自定义nginx配置文件通过多地址区分多网站 /etc/nginx/conf.d/test_ip.conf server { #标记为一个虚拟主机 } 6.根据配置…...
银河麒麟V10设置QT开发程序开机自启动
1、切换root用户: su root 2、进入/etc/xdg/autostart目录: cd /etc/xdg/autostart 3、创建一个test.desktop文件,文件名不一定命名为test,可以自己随意命名: touch test.desktop 4、完善test.desktop文件内容: …...
RabbitMQ高级特性详解
前言 RabbitMQ是一款广泛使用的开源消息队列软件,它基于AMQP(Advanced Message Queuing Protocol)标准实现。本文将带你深入了解RabbitMQ的一些高级特性,包括消息确认、死信队列、延迟队列、事务处理以及消息分发策略等ÿ…...
提升泛化能力的前沿方法:多任务学习在机器学习中的应用与实践
提升泛化能力的前沿方法:多任务学习在机器学习中的应用与实践 📋 目录 🧩 多任务学习的概念与动机🌐 多任务学习在自然语言处理中的应用案例🖼️ 多任务学习在计算机视觉中的应用案例⚙️ 项目实践:实现多…...
【小白学机器学习16】 概率论的世界观2
目录 一 从正态分布说起 1.1 正态分布是自然分布,是客观 1.2 万物不齐 1.3 中庸 1.4 动态平衡 正态分布,概率论都是一种世界观 一 从正态分布说起 1.1 正态分布是自然分布,是客观 世界是客观的,是不以人们的意志想法为转…...
洛谷 P9868 [NOIP2023] 词典
好久不写博客了,今天来水一篇 原题链接 初看此题在洛谷上的定位是黄题,实际上也并不是很简单。 其实主要就用到了贪心的思想,先说一下我在做题的时候是怎么想的吧。 先看了部分分,10分是很好拿的,再就分析题意&…...
跨浏览器免费书签管理系统
随着互联网信息的爆炸式增长,如何有效管理我们日常浏览中发现的重要网页,成为了每个重度互联网用户的需求。一个跨平台的书签管理网站能够帮助用户在不同设备之间无缝同步和管理书签。本文将分享如何使用 Python 和 SQLite 构建一个简单、易于维护的跨平…...
技术视域下人的类本质异化复归:返璞归真与转识成智的同构性探索
摘要: 本文立足于技术哲学与认知科学的交叉地带,审视现代技术环境(如算法主导的信息流、虚拟社交、自动化决策)中人的类本质异化现象。文章深入剖析“返璞归真”作为克服异化、回归本真状态的路径内涵,并揭示其与“转识…...
如何在不同的机器上运行多个OpenClaw实例?
想让不同机器上的 OpenClaw 一起协作,其实就是搭建一个跨机器的 “小龙虾通信网络”。实现方式分两种:简单直连(适合测试 / 小集群)和远程网关(适合生产 / 稳定协作)。下面给你一套直接能跑的完整方案。一、…...
OpenClaw离线部署方案:Qwen3-32B镜像在无网络环境中的适配改造
OpenClaw离线部署方案:Qwen3-32B镜像在无网络环境中的适配改造 1. 离线部署的核心挑战与解决思路 去年在给某研究所部署内部知识管理系统时,我第一次遇到完全隔离的局域网环境。当时尝试用OpenClaw对接Qwen模型,发现官方默认安装流程完全依…...
大子刊nc复现:连续介质中束缚态驱动下的平面手征超表面,展示最大和可调谐的三次谐波、本征手性B...
comsol三次谐波,本征手性BIC,远场偏振图,手性透射曲线,二维能带图,Q因子图,电场图,所见即所得 大子刊nc复现,在连续介质中束缚态驱动下具有最大和可调谐手征光学响应的平面手征超表面今天咱们来…...
**发散创新:基于同态加密的隐私保护计算在Python中的实战实现**随
发散创新:基于同态加密的隐私保护计算在Python中的实战实现 随着数据安全需求的不断升级,同态加密(Homomorphic Encryption) 正从理论走向落地。它允许对加密数据直接进行计算,结果解密后与明文计算一致——这为云计算…...
多车环境下车载毫米波雷达是否会相互干扰?
在汽车工业迈向智能化与自动化的进程中,毫米波雷达已然成为了车辆感知体系中不可或缺的一部分。这种波长介于1毫米至10毫米之间的电磁波进行探测的装置,凭借其能够穿透雨雪、浓雾及强光直射的全天候工作能力,为高级驾驶辅助系统提供了关键的距…...
终极指南:如何免费解锁Cursor Pro功能,彻底解决API限制问题
终极指南:如何免费解锁Cursor Pro功能,彻底解决API限制问题 【免费下载链接】cursor-free-vip [Support 0.45](Multi Language 多语言)自动注册 Cursor Ai ,自动重置机器ID , 免费升级使用Pro 功能: Youve …...
pg_activity快速入门:如何在5分钟内开始监控PostgreSQL服务器
pg_activity快速入门:如何在5分钟内开始监控PostgreSQL服务器 【免费下载链接】pg_activity pg_activity is a top like application for PostgreSQL server activity monitoring. 项目地址: https://gitcode.com/gh_mirrors/pg/pg_activity PostgreSQL数据库…...
重新定义AI时代的敏态与稳态:ArkClaw与HiAgent的双轮进化
4月2日,2026火山引擎AI创新巡展・武汉站正式启幕。火山引擎总裁谭待在宣布截至2026年3月,豆包大模型日均Token使用量突破120万亿,三个月翻倍、较2024年5月豆包问世增长了1000倍的同时,提出了以ArkClaw为敏态Agent、HiAgent为稳态A…...
Phi-3-mini-4k-instruct-gguf入门指南:轻量模型为何更适合中小团队AI能力快速验证
Phi-3-mini-4k-instruct-gguf入门指南:轻量模型为何更适合中小团队AI能力快速验证 1. 为什么选择轻量模型 在AI技术快速发展的今天,中小团队常常面临一个困境:既想快速验证AI能力,又受限于计算资源和时间成本。这正是Phi-3-mini…...
