I持って、次のクラスとメソッド:ReactiveCocaデザインパターン
クラス
- (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];
}
設計する最良の方法は何ですか配列番号results
がClass C
にアクセスできるように、requestData
をClass B
に含む。
すなわち
私は 、アレイに[array rac_sequence]
を使用していくつかの方法を転送すべき私はrequestData内の新しい信号を作成する必要があり、requestData
RACSignal
代わりのvoid
を返す必要がありますか?
何か助けや指導をいただければ幸いです。ありがとう。
私は反応型ココアに精通していませんが、結果が利用可能なときに呼び出されるブロックパラメータをretrieveDataメソッドに追加することをお勧めします。クラスCは、その結果で何をしたいのかを指定することができます。 – fishinear