代码之家  ›  专栏  ›  技术社区  ›  j2emanue

RxJava2-一旦一个已经初始化的空可观察对象发生变化,如何观察它?

  •  0
  • j2emanue  · 技术社区  · 6 年前

    所以我有一个单曲,它已经被初始化为类成员。它被初始化如下:

    这被定义为类成员。

    之后,在类已经初始化之后,我最终得到了实际响应,我希望这个myObservable现在就是响应:

      private fun callback(response:Response) {
                    myObservable= Single.just(response)//now look, myObservable got changed, but im watching it in the zipWith call. how can i tell zip to watch this one now instead of the empty one i initialized ?
    
    
                }
    

    但问题是,在类调用的一开始,我压缩了两个obervable(其中一个是myObservable),我试图倾听两者的变化并采取行动。以下是zipWith函数:

      someApi.fetchOrders(orderNumber).zipWith<MyResponse,Pair<OrdersResponse,MyResponse>>(myObservable) { t1, t2 ->Pair(t1,t2)}
    

    someApi.fetchOrders(orderNumber).zipWith>(myObservable.toSingle()){t1,t2->对(t1,t2)}

    1 回复  |  直到 6 年前
        1
  •  1
  •   Tuby    6 年前

    zipWith fetchOrders 没有,所以齐普威思什么也没做。你可以使用主语和change subject.withLatestFrom(someApi.fetchOrders()) . 一旦你把某件事推向主题, withLatestFrom fetchOrders() .