【发布时间】:2022-01-12 11:09:58
【问题描述】:
我正在尝试使用 SwiftUI 和 ComposableArchitecture 创建一个基本的时间跟踪应用程序。但是我正在努力思考如何以模块化方式对数据结构/应用程序状态进行建模。该应用程序是一个时间跟踪应用程序,因此它有:一个Project,它可以有零个或多个Task,它可以有零个或多个Activity 条目。
下面是我当前结构的示意图。
我得到的问题是,有了这个结构,现在ProjectState 有两个不同的任务列表。一个通过project.tasks,另一个通过tasks: IdentifiedArrayOf<TaskState>。
我应该如何考虑对此进行建模?
我不想合并数据模型和应用程序状态,因为应用程序状态更特定于视图,并且可能会添加视图特定状态,这可能在不同的地方有所不同。数据模型是将在整个应用程序中使用的通用模型。这就是为什么在Project->Task->Activity 之间建立关系可能是件好事。但是可组合架构的应用状态也需要不同状态之间的类似关系。
【问题讨论】:
标签: swift model architecture state swift-composable-architecture