Rin*_*nav 10 mvp android design-patterns rx-java rx-android
最近我开始阅读很多关于MVP的内容,我想用它练习我的项目.
但是我无法正确理解Rx + Retrofit代码应该去哪里?我认为应该通过Interactors在Model Layer中,但仍然可以有人对此有所了解吗?
RX回调会发生什么?onNext(),onCompleted()和onFailure()将数据传递回Presenter,还是我们实现了侦听器,然后将其传递给Presenter?
当我在onNext()中获取数据时,我还想保留数据(Realm/StorIO),所以再次将它传递给另一个DataLayer或它应该去哪里?
我们还应该进一步解耦Rx回调吗?
这个来自antonioleiva.com的单独github回购 https://github.com/antoniolg/androidmvp
正如您所指出的,RxJava功能定义了模型层的用例,因此它将被放置在该层的交互器中.您可以为每个用例创建不同的交互器.假设您从服务器中提取用户列表,这将是一个用例和一个具有RxJava/Retrofit Observable的交互器.
然后你会有一个带有Observer的Presenter,它对这个用户列表很感兴趣,所以它会被订阅到Observable.
最后,当Observer in拥有来自Observable(onCompleted)的所有数据时,它将转换这些数据(如果需要的话)并传递给View,它将负责显示它.