uni app开发小程序项目的分包实施
APP开发
浏览:1127 次

在开发小程序时,由于资源大小的限制和需求的扩大,这种冲突经常导致小程序项目容易超过2MB的大小限制。为了解决这个问题,我们专门研究了小程序的分包功能,即子包
有了子包,小程序项目的主包可以减少到2MB以下,并且可以扩展多个子包以满足小程序项目对项目大小的要求。
这样,我们的小程序项目可以分为主包和子包。默认情况下,项目只有一个主包。当小程序启动时,默认情况下加载主包。主包可以包含一些需要立即显示在页面上的内容,如选项卡和主页。根据功能模块,子包可以分为几个不同的子包,子包按需加载。也就是说,当通过主页路径跳转到子包中的页面时,将加载子包并加载其内容。这不仅加快了小程序的启动速度。并且根据不同功能模块的划分,我们可以根据功能轻松解耦,实现协同开发。
具体操作:
1创建分包目录:
分包目录可以根据功能创建一个或多个包。开发文件中的解释如下:
可以看出,我们最多可以创建9个子包,包括一个主包(假设每个包的大小正好是2MB)
我们根据其功能创建不同的分包合同。分包合同中的目录与页面中的目录大致相同。此外,如果多个分包共享一个资源,例如图片资源,您可以将该资源放在主包中,这样每个分包都可以访问主包中的资源。
分包可以访问主包中的资源。在分包之前,似乎无法正常访问资源。

因此,根据这个原则,如果我们有几个分包共享的资源,我们会将它们统一放在主包中。如果它们是独一无二的,我们将把它们放在我们自己的分包中,以实现脱钩。
2修改页面Json文件
修改页面。json文件。分包后,您需要输入页面在json文件中创建子包属性,并根据分包设计将分包中的目录放入不同的子包中
在subPackages属性中,您需要向每个项目添加根属性。该值是子包的名称。pages属性中的写入方法与主包中的完全相同。
修改subPackages属性后,需要修改路由跳转问题。这个问题很复杂。因此,我们应该在每次开发之前设计主包和子包之间的差异和内容。如果开发完成并进行重建,由此带来的工作量是巨大的。因此,良好的设计对项目非常重要。
3路线跳跃
分包后,路由跳转不能再与只有一个主包时相同。尽管我们仍然使用navigateTo()方法,但是url仍然需要修改。
我们看到在json页面中,为每个子包定义了根属性,因此根在这里工作!是的,当触发路由跳转时,我们需要添加这个根来标识我们的数据包并导航到相应的页面。
例如,假设有一个页面userInfo Vue,在使用分包之前,我们以这种方式跳转到userInfo页面

uni。navigateTo({url:“userInfo”})
但是现在我们userInfo在将vue放在packagesUser包中之后,它就无法访问了。因此,我们需要添加root属性来查找userInfo页面的位置,以便正常访问:
uni。navigateTo({url:“/packagesUser/pages/userInfo”})
这样,它就可以正常访问。
此外,如果您从一个分包跳转到另一个,则可以直接添加根属性。
例如,如果userInfo。包中的vue页面用户想要跳转到消息。packageMsg中的vue页面,我们可以这样写
uni。navigateTo({url:“/packagesMsg/pages/message”})
如果分包页面想要访问主包页面,只需写/页。示例:userInfo。packageUser中的vue页面跳转到索引。vue页面
uni。navigateToe({url:“/pages/index”})

通过我们的分包,我们可以从小程序项目的基本信息中看到,我们分包的内容可以大大减少。我们已将相应的页面和资源分配给不同的分包,以便我们的小程序在启动时更快地显示在用户面前。