/ / Beobachten Sie das Array und falten Sie es zu String - Ios, Kakao, MVVM, Reaktivkakao

Beobachte die Anordnung und falte sie zu einer Schnur - IOS, Kakao, MVVM, reaktiver Kakao

Ich bin neu in FRP und MVVM, aber bis jetzt ist es gut gegangen, aber ich habe jetzt ein Problem mit der Beobachtung eines Arrays auf meinem Modell und wenn es eingestellt ist, falten Sie es zu einem String.

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

Der obige Code hält nur die App an.

Aktualisieren

Also habe ich es herausgefunden, so typisch

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];
}];
}];

Aber ist das der beste Ansatz?

Antworten:

2 für die Antwort № 1

Wie wäre es damit:

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