首先说分包

uniapp分包的方法在开放文档里有,有基础的小伙伴就可以看懂

下面是我在开发中用到的分包

首先 我们在根目录下创建一个pagesB文件夹,用来放置需要分包的页面

下一步是把比较大的文件直接拉过去,pages里就没有这个文件了,然后配置路由

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33


"subPackages": [{


		"root": "pagesB",  //文件夹名称,  pages文件夹同级新建一个就行


		"pages": [


			{


			    "path" : "line_otem_detail/line_otem_detail",


			    "style" : {


					"navigationBarTitleText": "确认订单"


				}


			},


		 ]


	}],

它和pages里的路由地址的差距就是没有前缀

两个包的页面分开了,想要联系怎么办?

只需修改路由跳转的路径即可 比如pages里的某个文件要跳转到pagesB里的某个文件,需要精确查找

就是说我要去你家,你只给我口述哪哪哪,我要你发定位,像这样

1
2
3


"../../pagesB/shopping_detail/shopping_detail"

下面是分包预加载

就是说进入那个页面的时候就开始加载某个包文件

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18


 "preloadRule": {


		"pages/index/index": {


			"network": "all",


			"packages": ["pagesB"]


		}


	},

all是不限制网络,packages是加载的包名

就这么简单,分包就完成了

进入微信开发者工具,左上角详情,基本信息,本地代码点开就可以看到了

然后是压缩

针对vendor.js过大的情况可以使用运行时压缩代码

HBuilderX创建的项目勾选运行–>运行到小程序模拟器–>运行时是否压缩代码

cli创建的项目可以在pacakge.json中添加参数–minimize,示例:

1
2
3


dev:mp-weixin”: “cross-env NODE_ENV=development UNI_PLATFORM=mp-weixin vue-cli-service uni-build --watch --minimize

压缩大概可以压一倍左右,所以我建议先压缩运行,再分包