免费试用

跨平台小程序在线开发工具,用做网页的技术做小程序,兼容微信、支付宝、抖音、快手、百度等主流小程序平台!

uniapp开发的微信小程序分包

Uniapp是一款多端开发框架,支持开发微信小程序、H5、APP等多端应用。在开发微信小程序时,由于小程序限制单包大小必须不超过2MB,而一些项目需要引入大量的第三方库和图片资源,因此需要采用分包的方式来解决单包大小限制的问题。

一、分包原理

Uniapp中的分包原理是将项目中的文件按照指定的规则拆分成多个包,这些包在小程序启动后会异步加载并进行合并。当需要使用分包中的某个组件或页面时,Uniapp会自动加载该分包,并且只有在需要的时候才会加载分包中的其他组件和页面,以此来减小小程序的启动时间和提高用户体验。

分包的实现原理是在app.json文件中指定subpackages字段,该字段是一个数组类型,里面每一个对象都代表一个分包,并包含以下字段:

1. name:分包名称,必填项。

2. root:分包文件路径,相对于根目录,必填项。

3. pages:分包中的所有页面路径,可选项。

其中,name字段表示分包名称,将多个页面放在同一个分包中,可以方便的根据业务划分分包;root字段表示分包路径,也就是指定分包中页面所处的文件夹路径;pages字段可选,如果不指定pages,则表示该分包仅仅包含组件和其他资源文件,不包含页面。

二、分包示例

1. 在app.json文件中添加subpackages字段:

```javascript

{

"pages": [

"pages/index/index",

],

"subPackages": [

{

"name": "package1",

"root": "pages/package1/",

"pages": [

"package1-page1"

]

},

{

"name": "package2",

"root": "pages/package2/",

"pages": [

"package2-page1"

]

}

],

"tabBar": {

"list": [

{

"pagePath": "pages/index/index",

"text": "首页"

},

{

"pagePath": "pages/package1/package1-page1",

"text": "第一个分包"

},

{

"pagePath": "pages/package2/package2-page1",

"text": "第二个分包"

}

]

}

}

```

上述代码中我们可以看到:

- 三个文件夹(一个根文件夹,两个分包)

- 文件夹名包含多个单词(需用连字符隔开)

- 每个分包中只有一个页面

- 分包包含的页面路径,最终打包时会被合并至分包对应的目录

2. 打开微信开发者工具,可以在工具栏中找到“分包分析”按钮,点击后可以查看应用在各个分包之间的资源大小和依赖关系。

![image](https://cdn.nlark.com/yuque/0/2021/png/10872165/1613063421692-0d70ade6-3b4e-4d3a-8a8c-a99b068b0f13.png#align=left&display=inline&height=212&margin=%5Bobject%20Object%5D&name=image.png&originHeight=212&originWidth=781&size=16516&status=done&style=none&width=781)

在上述分析结果中,我们可以看到wxss、js、wxs、json等文件按照各个分包进行资源拆分,根据分析结果,我们可以对分包做一些优化和调整,例如单独拆出一些公共组件放到公共分包中,以此减小分包的大小。

三、注意事项

1. 分包名称不能重复。当分包名相同时,后面的分包会覆盖前一个分包。

2. 分包路径必须以/结尾,指定路径时,不建议使用../的相对路径。

3. 分包中的文件不能超过1MB,否则无法预加载。对于超过1MB的文件,建议使用动态加载的方式。

4. 注意分包的文件夹结构,确保不同分包中的文件不会有路径冲突。

总之,Uniapp中的分包机制,可以方便地将大型应用的代码拆分成多个小包,从而减小单个包的大小,提高小程序的启动速度和用户体验。


相关知识:
安阳百度小程序定制开发招聘
随着移动互联网的迅速发展,小程序已经成为了各个企业传递信息、增加用户粘性的一种重要方式之一。其中,百度小程序是目前业内的主流之一。本文将介绍安阳百度小程序定制开发以及其原理。什么是小程序?首先,我们需要了解一下小程序是什么。小程序是一种轻量级应用程序,通常
2023-08-09
安徽点餐小程序开发平台哪家好点
近年来,随着智能手机、APP和小程序的普及,点餐小程序也成为了餐饮业的重要发展趋势。安徽作为中国重要的餐饮产业基地之一,点餐小程序的开发与应用也越来越受到关注。下面将介绍几家在安徽点餐小程序开发平台上表现较为优异的公司。1. 厦门爱宇软件技术有限公司爱宇软
2023-08-09
安徽点餐小程序开发制作
随着移动互联网的普及,手机上的各种应用已经渗透到了人们的生活中,点餐小程序也逐渐成为了餐饮业主们的首选。安徽点餐小程序的制作涉及到前端开发、后端开发、数据存储等技术研究,接下来我们将从这些方面来逐步介绍安徽点餐小程序的制作原理或详细介绍。一、前端开发前端开
2023-08-09
安宁哪有开发小程序的公司招聘
小程序是一种轻量级的应用,适用于在微信、支付宝等社交平台上快速搭建与用户交互的应用。由于小程序应用场景广泛、使用范围广泛,开发小程序的公司越来越多。本文将详细介绍安宁哪有开发小程序的公司招聘。安宁市的开发小程序的公司非常多,可以分为如下类别:1. 面向客户
2023-08-09
ssm做微信小程序开发
SSM(Spring+SpringMVC+MyBatis)是一款经典的Java Web开发框架,它的作用是帮助开发者能够快速构建起一个高效、稳定的Web应用程序。微信小程序则是腾讯推出的一种体积小、加载速度快的应用程序,适用于移动设备的微型应用。本文将如何
2023-08-09
app开发真的不如小程序开发吗
近年来,小程序开发成为了移动端应用开发的热点之一,很多开发者开始倾向于使用小程序,甚至有人声称“app开发已死,小程序开发为王”。然而,这种声音实际上是片面的,因为每种技术都有其优劣之处,没有银弹。在此,本文将就app开发和小程序开发两种技术进行比较和分析
2023-08-09
app开发小程序公司
近年来,在移动互联网时代的引领下,App开发和小程序开发也成为热门的行业。App和小程序可以为企业和个人提供非常多的便利,如个性化推荐、快速支付、社交分享等等。但是要知道,一个成功的App或小程序不是简单的设计界面和编写代码,并能普及用户使用,同时也需要许
2023-08-09
小程序丨微信开发工具上传了代码
小程序是一种通过微信平台发布的应用,它的开发工具是微信开发者工具。在小程序开发中,将代码上传到微信开发者工具十分重要,但很多刚开始接触小程序的开发者可能对代码上传的原理不太清楚。下面,我将详细介绍一下小程序代码上传的原理和操作步骤。一、代码上传的原理小程序
2023-05-26
百色可视化小程序开发工具有哪些类型
百色可视化小程序开发工具是基于互联网技术和移动设备的应用开发工具。它允许用户在不需要编写任何代码的情况下快速开发出自己的小程序,从而让用户能够专注于业务本身而不是技术细节。根据实现的方式,目前有以下几种类型的百色可视化小程序开发工具:1. 拖拽式可视化开发
2023-05-22
程序小程序是什么意思?
程序小程序是一种轻量级的应用程序,通常运行在移动设备上,如手机、平板电脑等。它们通常是单独的应用程序,不需要用户下载和安装,可以直接在浏览器中运行。程序小程序通常使用 HTML、CSS、JavaScript 等技术开发,并使用微信、支付宝、百度等平台提供的开发工具进行开发。
2023-04-06
php网页转小程序
随着移动互联网的发展,小程序的兴起已经成为了一个趋势。许多企业和个人都开始关注小程序的开发和推广。而对于一些已经有了网站的企业和个人,如何将网站转换成小程序也成了一个热门的话题。本文将介绍php网页转小程序的原理和详细步骤。一、原理php网页转小程序的原理
2023-04-06
【支付宝小程序】配置支付宝小程序上传发布接口
一门小程序支持多端小程序生态,支持支付宝小程序打包! 也支持支付宝小程序一键发布到支付宝官方进行审核! 只需要在开发者后台配置一下支付宝发布接口即可
2022-08-24