core-data - 过滤RACSequence不按预期方式工作

  显示原文与译文双语对照的内容
92 3

我正在尝试使用ReactiveCocoa刷新一个已经获取的对象的array,我想过滤掉已经删除的结果。 我不能正确地使用 —,我希望 filter 会在trackSequence中传递每个 NSManagedObject,但是我看到了一个 _PFBatchFaultingArray 对象。

谁能把我的错误 shed? 谢谢!


RACSequence *trackSequence = [documentContextUpdated map:^NSArray *(RACTuple *tuple) {
 return [DWFAbstractTrack MR_findAllSortedBy:DWFAbstractTrackAttributes.order ascending:YES inContext:tuple.second];
}].sequence;

RAC(self, tracks) = [trackSequence filter:^BOOL(NSManagedObject *managedObject) {
 return (NO == [managedObject isDeleted]);
}].signal;

时间: 原作者:

121 4

看起来 trackSequenceNSArrayRACSequence 而不是 NSManagedObject的。 或者许你希望在 -map: 中使用 -filter:


RAC(self, tracks) = [documentContextUpdated map:^NSArray *(RACTuple *tuple) {
 NSArray *tracks = [DWFAbstractTrack MR_findAllSortedBy:DWFAbstractTrackAttributes.order ascending:YES inContext:tuple.second];
 return [tracks.rac_sequence filter:^BOOL(NSManagedObject *managedObject) {
 return (NO == [managedObject isDeleted]);
 }].array;
}];

原作者:
...