ReactiveCocoa可以过滤操作吗?

例如:

我想实现这样的效果

 if(condition){
        return [self getObjectArraySignal:page];
    }else{
        @weakify(self)
        return [[self getObjectArraySignal:page] flattenMap:^RACStream *(NSMutableArray *resultArray) {
            @strongify(self)
            return [self getCommentCountsSignal:resultArray];
        }];

    }

把这段代码合并成一行代码,即条件满足则不执行flattenMap操作,不满足则执行flattenMap操作。
(1)filter过滤的是结果,而不是操作;
(2)[RACSignal if:<#(RACSignal )#> then:<#(RACSignal )#> else:<#(RACSignal *)#>];是静态方法,也不满足我的需要;

如有好的解决方案,请告诉我,不胜感激。

阅读 2.8k
1 个回答

你用三元表达式就是一行了。按照你的这个代码来讲,不要再强行上RAC了。Make it simple。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题