【发布时间】:2020-01-18 22:41:46
【问题描述】:
我正在尝试在我的新应用中实现 MVVM 结构。我有以下几层。
- AViewControler
- AViewModel
- 经理
- 网络管理器
- 缓存管理器
- 变压器
我的视图控制器完美地完成了它的工作,即渲染 ui 并为更改更新视图和视图模型。
现在当我需要调用 api 时。 ViewController 要求 Viewmodel 获取数据。它要求 Manager(repository) 获取数据。 Manager 调用 NetworkManager(全应用通用)调用 api 并获取数据。
Manager 还使用 body 和 queryparams 创建 urlrequest。 Manager 获取 APIModel 并将其转换为 Cachodel 并交给 CacheManager 编写。
My Manager 将 API 模型返回给 viewmodel,并根据其要求,viewmodel 使用 Transformer 层将 apimodel 转换为业务。
现在我很困惑是将apimodel赋予viewmodel还是将其转换为manager layer的businessmodel并将businessmodel赋予viewmodel。
实现这一目标的最佳方法是什么,或者如果我已经在架构中做错了什么。
【问题讨论】:
标签: swift mvvm business-logic