Feature 模块概览
介绍
Feature 层承载项目自己的业务实现,位于 feature/ 目录。这里不提供通用能力,只负责具体业务流程、页面与交互逻辑。
目录结构约定
每个业务模块保持一致的目录结构,方便协作与维护:
| 目录 | 说明 |
|---|---|
navigation/ | 当前模块的页面入口与 Graph 注册。 |
viewmodel/ | 页面对应的 ViewModel。 |
view/ | 页面视图与布局。 |
model/ | 业务模块内的 UI 模型或页面数据结构。 |
component/ | 可选,模块内复用的 UI 片段。 |
与 Core 的关系
- Feature 只负责业务,不直接依赖
network/database/datastore。 - 所有数据访问统一走
core/data提供的仓库。 - UI 规范优先使用
core/designsystem与core/ui。 - 导航跳转优先使用模块级
Navigator,路由注册由模块 Graph 负责。
推荐开发流程
- 定义模块路由常量,并在模块 Graph 中注册。
- 创建 ViewModel,封装页面状态与操作。
- 创建 View,绑定 ViewModel,并组织页面布局。
- 在
entry模块注册 Graph,完成接入。
Feature 章节主要约束目录与命名规范,具体业务逻辑由各模块自行实现。
小结
Feature 章节主要约束目录与命名规范,具体业务逻辑由各模块自行实现。