/ /配列を観察し、文字列に折ります-ios、cocoa、mvvm、reactive-cocoa

配列を観察して文字列に折り畳む - ios、cocoa、mvvm、reactive-cocoa

私はFRPとMVVMを初めて使用しますが、今のところうまくいっていませんが、モデルの配列を観察し、それを文字列に折りたたむときに問題があります。

RAC(self, tags) = [[RACObserve(self.deal, tags) sequence] foldLeftWithStart:@"" reduce:^id(NSString *accumulator, NSString *value) {
return [NSString stringWithFormat:@"%@#%@ ", accumulator, value];
}];

上記のコードはアプリを停止するだけです。

更新

だから私はそれを理解したので、典型的な

RAC(self, tags) = [RACObserve(self.deal, tags) map:^id(NSArray *tags) {
return [[tags rac_sequence] foldLeftWithStart:@"" reduce:^id(NSString *accumulator, NSString *value) {
return [NSString stringWithFormat:@"%@#%@ ", accumulator, value];
}];
}];

しかし、これが最良のアプローチですか?

回答:

回答№1は2

これはどう:

RAC(self, tags) = [RACObserve(self.deal, tags) map:^(NSArray *tags) {
return [@"#" stringByAppendingString:[tags componentsJoinedByString:@"#"]];
}];