微信小程序分包

news/2024/11/29 11:35:42/

问题描述

小程序开发时,通过npm下载了一些第三方库,然后随着开发的深入,小程序本身页面也比较多,最后导致小程序的体积过大(超过2M),无法正常使用真机预览和调试

在这里插入图片描述
在这里插入图片描述
这时候就要用到微信小程序的分包功能了

分包过程

分析页面,将一些页面分出去
在这里插入图片描述

1.在与pages文件夹同级目录下建立分包文件夹

在这里插入图片描述
本项目可以拆分为4个模块,对应4个包,一个主包,三个分包,主包放首页和登录模块以及一些依赖包,注意删除不必要的依赖包,分析依赖可知,主包中占体积最大的主要是npm下载的依赖包,所以要删除不必要的依赖包,并把主包中的页面拆分到其他包去。

拆包方法

1.在与主包pages同目录下建立分包文件夹,在分包中建立自己的pages文件夹;
2.将主包中同一模块的页面剪切到对应分包的pages目录下;
3.拆分过去之后记得更新之前页面上写的关于页面跳转的路径,否则可能会编译失败;
4.分包中可以自己新建npm,可以有自己的图片文件夹;

具体配置如下:
{"pages": ["pages/index/index","pages/login/login","pages/test1/test1"],"window": {"backgroundTextStyle": "light","navigationBarBackgroundColor": "#fff","navigationBarTitleText": "GUET物理实验助手","navigationBarTextStyle": "black"},"subpackages": [{"root": "data_filling","name": "data_filling","pages":["pages/A102/A102","pages/C303/C303","pages/C101/C101","pages/A202/A202","pages/C103/C103","pages/C203/C203","pages/A204/A204","pages/A302/A302","pages/C301/C301","pages/A304/A304","pages/showDataA302_c/showDataA302_c","pages/component/input-form-cpn-2/input-form-cpn-2","pages/component/exp-title/exp-title","pages/component/input-form-cpn/input-form-cpn","pages/reportPage/reportPage"],"independent": false},{"root": "student","name": "student","pages":["pages/student/student","pages/viewExpData/viewExpData","pages/component/exp-list-cpn/exp-list-cpn","pages/component/my-student-cpn/my-student-cpn","pages/component/today-cpn/today-cpn","pages/exp-guide/exp-guide","pages/expDetail1/expDetail1","pages/expDetail2/expDetail2"],"independent": false},{"root": "teacher","name": "teacher","pages":["pages/teacher/teacher","pages/contactTeacher/contactTeacher","pages/correctExpData/correctExpData","pages/tLookExpData/tLookExpData","pages/download/download","pages/A302CorrectExpData_c/A302CorrectExpData_c"],"independent": false}],"style": "v2","sitemapLocation": "sitemap.json","permission": {"scope.userLocation": {"desc": "你的位置信息将用于签到"}}
}
项目目录结构

在这里插入图片描述

分包后

在这里插入图片描述

参考:
https://blog.csdn.net/wangzai888/article/details/88852116
微信官方文档-使用分包


http://www.ppmy.cn/news/551052.html

相关文章

H323协议

关于H323 发起会话,控制多个参与者参加的多媒体会话的建立和终结,并能动态调整和修改会话属性,如会话带宽要求、传输的媒体类型(语音、视频等)、媒体的编解码格式、广播的支持等。 包括 信令控制协议H.245、H.225.0音…

使用 T-SQL 语句对数据库表进行单个数据插入、成批数据插入、修改和删除数据操作的介绍

增删改语句的介绍: 一、单个数据插入语句 INSERT INTO 表名 [(属性列 1,属性列 2 … )] VALUES (常量 1 ,常量 2 … ) 说明: ① 插入一个新元组,新元组属性列 1 的值为常量 1,属性列 2 的值为…

最优化理论中的惩罚函数法:概念、推导和应用

目录 1. 引言 2. 惩罚函数法的概念 2.1 惩罚函数法的基本思想 2.2 惩罚函数的定义 2.2.1 符号性质 2.2.2 惩罚性质 2.2.3 连续性质 2.3 惩罚函数法的推导 2.4 惩罚函数法的特点 2.4.1 灵活性 2.4.2 通用性 2.4.3 近似解 2.4.4 收敛性 3. 推导过程 3.1 问题建模 …

2023中国眼博会(CEYEE)北京国际青少年眼健康产业展会

依托北京的位域优势,打造国际型眼康产业标杆盛会,2023中国眼博会(CEYEE)8月28日盛大开幕; 唯有盛会:作为我国唯有的一场专注于儿童青少年眼睛健康展览活动,创展于2019年的“中国(北…

基于Smb协议实现网络文件传输(Golang)

在前面章节已经展示了一些关于SMB的基本介绍,以及对应SMB相关操作的Java实现,这一章主要是前一章的补充,使用Golang来对 SMB共享文件夹进行操作。如果没有阅读过上一章节的同学,请跳转到 基于Smb协议实现网络文件传输,…

ThreeJS案例一——在场景中添加视频,使用人物动作以及用键盘控制在场景中行走的动画

准备 首先我们需要两个模型,一个是场景模型,另一个是人物模型。 人物模型我这里用的Threejs官网中的给的模型,名称是Xbot.glb。 当然人物模型也可以自己去这个网站下载sketchfab,下载后给模型添加动画mixamo 下载模型动画 先让…

【实战】 JWT、用户认证与异步请求(1) —— React17+React Hook+TS4 最佳实践,仿 Jira 企业级项目(四)

文章目录 一、项目起航:项目初始化与配置二、React 与 Hook 应用:实现项目列表三、TS 应用:JS神助攻 - 强类型四、JWT、用户认证与异步请求1.login2.middleware of json-server3.jira-dev-tool(imooc-jira-tool)安装问…

MySQL生产环境高可用架构详解

一、MySQL高可用集群介绍 1、数据库主从架构与分库分表 随着现在互联网的应用越来越大,数据库会频繁的成为整个应用的性能瓶颈。而 我们经常使用的MySQL数据库,也会不断面临数据量太大、数据访问太频繁、数据 读写速度太快等一系列的问题。所以&#xf…