0
我有一个存储的NSArray。我如何观察另一个NSArray的变化并与存储的进行比较? 看起来像:如何比较ReactiveCocoa中的两个NSArrays
RACSignal *compareArraySignal = [[RACObserve(self, arr) ...];
谢谢。
我有一个存储的NSArray。我如何观察另一个NSArray的变化并与存储的进行比较? 看起来像:如何比较ReactiveCocoa中的两个NSArrays
RACSignal *compareArraySignal = [[RACObserve(self, arr) ...];
谢谢。
取决于你真正想要怎样去比较这些阵列,你需要观察两个阵列,结合自己的值,然后映射到通过你的比较结果。
RACSignal *compareArraySignal = [[RACSignal combineLatest:@[
RACObserve(self, array1),
RACObserve(self, array2)]]
map:^id _Nullable(RACTuple * _Nullable value) {
RACTupleUnpack(NSArray *array1, NSArray *array2) = value;
return @([array1 isEqualToArray:array2]);
}];
在这个例子中,我只是比较平等,但你可以做任何需要的地图块
这就是我所需要的。实际上,我会使用'zip:'而不是'combineLatest:'来比较两个数组中的每对元素。 谢谢。 –