我有3个要观察的属性,当其中任何一个更改时,我想调用相同的块。
我不能使用combineLast:reduce:因为有时三个信号中只有一个会产生下一条消息。
除了写RACObserve()
3次之外还有什么好主意吗?
答案 0 :(得分:0)
我能想到的最干净的方法是合并所有三个信号,以便每个事件都在一个流中传递,如下所示:
[[RACSignal merge:@[RACObserve(self, property1),
RACObserve(self, property2),
RACObserve(self, property3)]]
subscribeNext:^(id x){
NSLog(@"%@", x);
}]