Wie kann ich die Ausführung eines Befehls für Signale ohne verschachteltes Abonnement abonnieren?

Ich habe folgendes ohne Erfolg versucht. Das Äquivalent mit-subscribeNext: funktioniert wie erwartet.

// A
[[_viewModel.loginCommand.executionSignals flatten] subscribeCompleted:^{
    NSLog(@"A");
}];

Meine einzige funktionierende Implementierung ist wie folgt:

// B
[_viewModel.loginCommand.executionSignals subscribeNext:^(RACSignal *loginSignal) {
    [loginSignal subscribeCompleted:^{
        NSLog(@"B");
    }];
}];

Warum nicht?-flatten in "A" arbeiten, und wie kann ich "B" umschreiben, um kein verschachteltes Abonnement zu verwenden?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage