【发布时间】:2019-08-29 13:20:11
【问题描述】:
我在我的 android 项目中使用 mvvm。我必须从不同的 ui 片段调用相同的 API。根据 mvvm,一个 ui 有一个视图模型。那么我是否必须为每个 ui 片段复制我的 api 代码?
【问题讨论】:
标签: android mvvm dagger-2 android-livedata
我在我的 android 项目中使用 mvvm。我必须从不同的 ui 片段调用相同的 API。根据 mvvm,一个 ui 有一个视图模型。那么我是否必须为每个 ui 片段复制我的 api 代码?
【问题讨论】:
标签: android mvvm dagger-2 android-livedata
不。您必须创建一个 Repository 类并在此存储库类中添加调用 API 的函数现在将您的存储库类与您的视图模型链接起来。现在每当您想调用 API 时,只需调用您在视图模型中编写的函数在您想要的任何片段中。不要忘记将片段连接到视图模型
【讨论】:
只需将视图模型附加到您的新片段,就像您附加上一个片段一样。 在 MVVM 中,视图模型不关心是谁发出了请求,也不包含对视图组件的任何引用。这使得它可以在应用程序中重复使用,并且是 MVVM 的美。
【讨论】: