viewmodel - Livedata与Rxjava

标签 viewmodel rx-java2 android-architecture-components android-livedata android-jetpack

我必须花费大量时间在业务逻辑中学习和实现Livedata(尤其是MediatorLivedata),因为它有助于添加来自各种来源的数据。它取得了成功,因为我可以将FCM,Network或RoomDatabase作为不同的源添加到MediatorLivedata中,并在ViewModel中进行观察。它实际上可以很好地扩展。但是,它仍然缺少强大的RxJava2实现,例如很好地链接请求,平面 map 等。似乎RxJava主要用于业务逻辑,但是实际上,我看到很多公司将RxJava与带有附加功能/库的UI一起使用。实际上,这使LiveData与表示逻辑无关。所以我想知道LiveData在表示逻辑方面(在ViewModel中使用它)相对于RxJava是否更好/更干净。您对 future 有何建议?

最佳答案

RxJava对LiveData来说既不好也不坏,这是不同的。
Android体系结构组件旨在为Android开发人员提供模型架构模式。因此,如果您对LiveData感到满意,请使用它,或者如果您对RxJava感到满意,请使用它。您可以使用这两个库进行所有操作。
尽管RxJava确实包含许多语法糖,但是使用Livedata也可以实现相同的功能。

关于viewmodel - Livedata与Rxjava,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51665564/

相关文章:

android - 实时数据中的 Observables 更新在 fragment 中不起作用

验证属性 MVC 2 - 检查两个值之一

java - ViewModelProvider Fragment实例化模型

android - RxJava 在主线程中运行部分平面图

Android Architecture Components GithubBrowser示例单元测试理解

android-studio - 即使用@HiltAndroidApp注释后,Hilt也找不到Application类

android - RxJava 与 Firestore 实时数据

java - 如何使用 RxJava 加载相关对象

android - 如何在 Architecture Components ViewModel 中刷新数据

Android Jetpack Navigation、BottomNavigationView 与 Youtube 或 Instagram 类似正确的后退导航( fragment 后退堆栈)?