【问题标题】:which is a correct place to call API in MVVM architecture pattern? [closed]在 MVVM 架构模式中哪个是调用 API 的正确位置? [关闭]
【发布时间】:2020-02-28 21:11:24
【问题描述】:

在 MVVM 架构模式中哪个是调用 API 的正确位置?

我遇到了上述场景的两种实现方式。

1) 从视图控制器调用 api。 2) 从viewmodel调用api。

哪一个更适合 MVVM 架构? 或者从哪里调用 MVVM 中的 api 的任何其他更好的方法?

当然,API 调用是在单独的 Web 服务相关类中实现的。 但我必须从某个地方调用该方法(视图控制器或视图模型)

【问题讨论】:

    标签: ios swift mvvm


    【解决方案1】:

    视图:这里只设置视图逻辑,如文本、颜色、约束、图层等。超级笨。

    模型:是人、书、狗、待办事项。它应该只代表数据库中的数据。通常实现 Codable 等。

    视图模型:视图应该向视图模型询问所有数据。因此,这就是 api 调用所在的位置。视图根本不应该知道 api。

    一个 UIViewController,是一个视图,应该有一个 viewModel。 UIViewController 必须仍然是愚蠢的,并且从 API 中不知道。

    【讨论】:

      【解决方案2】:

      视图控制器充当它管理的视图和应用数据之间的中介 所以在 ViewController 上调用 apiCall 函数更有意义

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-04-26
        • 1970-01-01
        • 2020-07-26
        • 1970-01-01
        • 2020-06-26
        • 2020-09-12
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多