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 № 1Wie wäre es damit:
RAC(self, tags) = [RACObserve(self.deal, tags) map:^(NSArray *tags) {
return [@"#" stringByAppendingString:[tags componentsJoinedByString:@"#"]];
}];