【关键字】
项目架构 / Feature / 页面跳转 / loadContentByName / 命名路由
【问题描述】
当前项目设计如下:
-
base目录:各个相对独立的基础功能HSP包
-
datastore目录:数据持久化处理、存储
-
network目录:基础网络框架
-
common目录:通用的常量、model等
-
component目录:通用的组件、LoadingLayout、通用标题栏等
-
dialog目录:通用带按钮弹窗、loading弹窗等基础弹窗相关
-
utils目录:各种工具类
-
feature目录:各个独立功能模块,可单独运行
-
login目录:登录注册相关功能模块
-
card目录:卡片相关功能模块
-
setting目录:设置相关功能模块
-
other目录:其他功能模块
-
...
-
entry目录:app主入口,包括启动页、欢迎页、首页等
问题1:后期项目会越来越庞大,考虑电脑性能,独立功能模块是单独写成一个feature包,还是写成HSP包后再写个空feature包引用HSP包单独运行?
问题2:如果写成feature包,是否能够支持在entry里面单独唤起pages而不通过ability?
【解决方案】
-
独立功能模块建议写成HSP包。
-
如果写成feature包,可通过loadContentByName和命名路由的方式实现entry中唤起features中的pages。