整理开发小程序时所遇到的问题(2)---小程序分包

在开发过程中,代码逻辑的日渐累积;毋庸置疑的需要用到了分包,此随笔记录了代码分包所遇到的问题;

注意:

1) 分包的页面不能作为tabBar 页面,tabBar 页面必须在app(主包)内

2)分包的页面不可以引用另一个分包里的页面,资源;只可以引用app下的公用组件、静态文件

 

1.在app.json 文件下配置

 

('subPackages' : 声明项目分包结构,root:分包根目录,name:分包别名,分包预下载时可以使用)

(‘preloadRule’:分包预下载,key:是页面路径【在该页面进行预下载,如:'pages/index/home'】,value:预下载的分包别名【如:moduleB】)

config = {

page:[

'pages/index/home'

],

'subPackages': [{

'root': "moduleA",
'name':'moduleB',
'pages': [

"pages/name",

]

}],
'preloadRule':{

'pages/index/home':{

'network':'all',
'packages':['moduleB']

}

}

}

 

2.项目目录如下:

 

 

3.分包页面跳转如下:

<navigator url="/moduleA/pages/name">测试跳转分包</navigator>

 

4.过程中遇到的问题总结:

* 在page集合里添加分包页面路径(注意注意, 无需在page集合里添加分包页面路径)

* 在subPackages下的page里配置了分包模块名 如:错误写法(moduleA/pages/name) 正确写法应是(pages/name)

* 跳转页面后页面为空,原因是(更改了subPackages下的name,导致preloadRule下的value  与分包别名不一致, 更改一致后需要重启项目)

* 跳转页面地址写错;页面地址应该是 subPackages 下的root + page里的页面地址,如:/moduleA/pages/name

 

posted @ 2021-01-11 17:15  方糖糯糯  阅读(534)  评论(0编辑  收藏  举报