【问题标题】:ReactiveCocoa: observe a list of signals and call block when any signal post next messageReactiveCocoa:观察信号列表并在任何信号发布下一条消息时调用块
【发布时间】:2015-08-19 09:28:05
【问题描述】:

我有 3 个属性要观察,当其中任何一个发生变化时,我想调用同一个块。

我不能使用 combineLast:reduce: 因为有时三个信号中只有一个会生成下一条消息。

除了写RACObserve() 3遍还有什么好主意吗?

【问题讨论】:

    标签: reactive-cocoa


    【解决方案1】:

    我能想到的最简洁的方法是合并所有三个信号,以便每个事件都在单个流中传递,如下所示:

    [[RACSignal merge:@[RACObserve(self, property1),
                        RACObserve(self, property2),
                        RACObserve(self, property3)]] 
      subscribeNext:^(id x){
          NSLog(@"%@", x);
    }]
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-02-14
      • 1970-01-01
      • 2016-03-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多