【问题标题】:Dependence of one Observable on another RxJava2一个 Observable 对另一个 RxJava2 的依赖
【发布时间】:2019-07-29 10:03:56
【问题描述】:

有一个类,它有可观察的字段。我要更新localData

接收远程数据remoteData时,由于某种原因无法获取localData中的数据,调试到getIdsInDatumsRemote ()也没有下断点。 identifyDatumsForUpdate () 方法得到一个空的 Observable。

class DiskDatumDataStore {

    var remoteData: Observable<Data>? = null

    var localData: Observable<Data>? = null

    override fun sync() {
        remoteDatums = getChangedRemoteData(lastUpdated!!, 1000)!!
        localDatums = remoteDatums!!.map {
            getIdsInDatumsRemote(it)
        }.map {
            it.map {
                it.toLong()
            }
        }.flatMap {
            getOldLocalData(it)
        }


        identifyDatumsForUpdate(datumsForUpdateLocal, datumsForUpdateRemote)
    }

    override fun getOldLocalData(remoteDatumsIds: List<Long>): Observable<List<DataLayerTypesOfResponsibility>> {
        return Observable.fromCallable { repository.getOldDatum(remoteDatumsIds) }      
    }
}

【问题讨论】:

    标签: java kotlin rx-java2 rx-kotlin2


    【解决方案1】:

    您的Observable 不是subscribing。你只是在创造它。

    localDatums = remoteDatums!!.map {
                getIdsInDatumsRemote(it)
            }.map {
                it.map {
                    it.toLong()
                }
            }.flatMap {
                getOldLocalData(it)
            }.subscribe { it->
                //do something with the result `it`
            }
    
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-04-03
      • 2018-09-16
      • 1970-01-01
      • 1970-01-01
      • 2021-10-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多