ios - 用于转发/链接信号的 ReactiveCoca 设计模式

标签 ios objective-c functional-programming reactive-cocoa

我有以下类和方法:

A级

- (RACSignal *)createX
{
    NSDictionary *parameters = @{};

    return [[[[HTTPClient sharedClient] rac_POST:@"X/" parameters:parameters]
        map:^id(OVCResponse *response) {
            [self logResponse:response];
            return response.result;
        }] catch:^RACSignal *(NSError *error) {
        return [RACSignal error:[self handleError:error]];
    }];
}

B级

- (void)requestData
{
    [[self.myClassA createX]
     subscribeNext:^(NSArray *results) {
        DDLogDebug(@"response : %@", results);
    }
     error:^(NSError *error) {
            [self.dataManager sendError:error];
        }];
}

C级

- (void)retrieveData
{
    [self.myClassB requestData];

}

B 类 中设计 requestData 的最佳方法是什么,这样 results 数组可以在 C 类<中访问.

我是否应该使用 [array rac_sequence] 以某种方式转发数组, 我是否应该在 requestData 中创建一个新信号,requestData 是否应该返回一个 RACSignal 而不是 void

如有任何帮助或指导,我们将不胜感激。谢谢。

最佳答案

我相信您想在 B 类中使用 doNext 而不是 subscribeNext

关于ios - 用于转发/链接信号的 ReactiveCoca 设计模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38411045/

相关文章:

c# - 将 InputAccessoryView 设置为 UISearchController

ios - #import "Project-Swift.h"出现了一些奇怪的问题

ios - Swift 3 - NSCoding 没有从 NSObject 继承的烦恼

functional-programming - Okasaki 的 Purely Functional Data Structure 中的 Streams 章节

ios - 从 AVAssetImageGenerator 生成图像在不同时间提供相同的图像副本

ios - 使用大标题时,不会触发 UIScrollView 中的 UIRefreshControl

ios - CredStore 执行查询错误

objective-c - Swift 只读外部,读写内部属性

javascript - 打印数组内某些对象日期范围内包含的所有日期的最佳方法是什么?

list - lisp 编程中的变量