ReactiveCocoa:当下一条消息发出任何信号时,观察信号列表并调用阻塞

时间:2015-08-19 09:28:06

标签: reactive-cocoa

我有3个要观察的属性,当其中任何一个更改时,我想调用相同的块。

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

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

1 个答案:

答案 0 :(得分:0)

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

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