UniApp项目处理小程序分包

目前 uniApp也成为一种 App端开发的大趋势

因为在目前跨端 uniApp可以说相当优秀

可以同时兼容 H5 PC 小程序 APP 的技术 目前市场屈指可数

那么 说到微信小程序 自然就要处理分包 因为微信小程序对应用大小限制非常铭感

限制在2MB 超过之后就会无法真机调试与打包

不过需要注意的是 就算分包 确保每个包都不大于 2MB的情况下 如果主包加上其他包总和大于 20MB依旧会超过限制

不过不用担心 图片建议放在服务器上 别增加小程序的负担了 然后 一个包可以装非常多page页面 然后 10个包 一般的市场应用都能满足了

所以 分包固然好 但也不能为所欲为 只能说将容纳度提高了

说回到项目 目前所有的页面 都在pages中

所以 我们的主包自然就是 我们整个项目页面的主包

我们先打开项目跟目录的 manifest.json

打开源码视图

我们在下面找到 mp-weixin 这就是 微信相关的配置

我们在下面加上

javascript 复制代码
"optimization":{"subPackages": true}

意思就是开启分包

然后 我们右键项目 跟目录 多创建几个 page包

这里 我创建了 pageA 和 pageB 两个包

然后 我们在 pageA中创建一个 vue 文件

就叫list吧

list.vue 编写代码如下

html 复制代码
<template>
	<view class="content">
		LIST组件
	</view>
</template>

<script>
</script>

<style>
</style>

pageB 中创建一个 map.vue

代码如下

html 复制代码
<template>
	<view class="content">
		MAP组件
	</view>
</template>

<script>
</script>

<style>
</style>

这样 整体的目录结构 就是这样的

但 现在 pageA 和 pageB都没有生效

我们打开 pages.json

在里面加个subPackages

javascript 复制代码
"subPackages": [
	{
		"root": "pageA",
		"pages": [
			{
				"path": "list",
				"style": {
					"navigationBarTitleText": "列表"
				}
			}
		]
	},
	{
		"root": "pageB",
		"pages": [
			{
				"path": "map",
				"style": {
					"navigationBarTitleText": "集合"
				}
			}
		]
	}
],

我们配置了两个分包 pageA和pageB

然后声明了 它们下面的page 分包是 pageA的list 和 pageB下的map

一个包下面可以有多个page例如这样

javascript 复制代码
{
    "root": "pageA",
	"pages": [
		{
			"path": "list",
			"style": {
				"navigationBarTitleText": "列表"
			}
		},
		{
			"path": "map",
			"style": {
				"navigationBarTitleText": "集合"
			}
		}
	]
}

但我这里 为了简单点 两个包下面就都只写了一个界面

然后 我们pages中的 首页 index 编写代码如下

html 复制代码
<template>
	<view class="content">
		<button @click="Jump()">跳转</button>
	</view>
</template>

<script>
	export default {
		data() {
			return {
			}
		},
		onLoad() {
			
		},
		methods: {
			Jump() {
				uni.navigateTo({
				    url: "/pageA/list"
				})
			}
		}
	}
</script>

<style>
	*{
		margin: 0;
		padding: 0;
	}
	.content {
		height: 100vh;
		width: 100vw;
		position: relative;
	}
</style>

设置button按钮 然后点击事件 尝试向 pageA下的list界面跳转

我们尝试微信开发者工具运行

项目启动成功

我们点击按钮

套转也是非常顺利

相关推荐
头发还在的女程序员11 小时前
基于 Spring Boot + Vue 3 + uni-app 的灵活用工系统:四端架构与业务流程设计
vue.js·spring boot·uni-app·灵活用工·灵工系统
wafrdggh20 小时前
2026电商快递批量查询怎么用?固乔助手模板设置评测
大数据·数据库·小程序
wafrdggh1 天前
2026 商城小程序平台哪个价格合理?把跨境附加成本这个坑算透
大数据·小程序
Dumbness2 天前
订阅消息弹窗必须在用户点击里调:联调实验室里 timing 和 Mock 支付通知踩的坑
javascript·uni-app
码间留白3 天前
uni-app 鸿蒙离线打包:一个改动从源码到真机要穿过几条链
uni-app·鸿蒙·deveco·离线打包·uts插件
恩创软件开发3 天前
自助KTV系统管理员续单功能
经验分享·小程序
多客:duokelijie4 天前
代练订单系统选型思路:跨品类游戏接入、订单分层管理、自动结算逻辑拆解!
数据库·mysql·微信小程序·前端框架·uni-app·php·持续部署
码间留白4 天前
鸿蒙端对接 BLE 血压计:从一次握手到读数入库(二)设备篇
物联网·uni-app·鸿蒙·蓝牙ble·血压计
AI源码5 天前
在线考试小程序
小程序·notepad++
华玥作者5 天前
Vue 3 + TypeScript + uni-app 组件库推荐:hy-app(华玥组件库)
vue.js·typescript·uni-app