Ich habe auf RxSwift bemerkt GitHub Login Example dass Observablen aus dem Viewcontroller in das Ansichtsmodell bei der Initialisierung übergeben werden:Wo sind Observables in MVVM zu binden?
let viewModel = GithubSignupViewModel1(
input: (
username: usernameOutlet.rx_text.asObservable(),
password: passwordOutlet.rx_text.asObservable(),
repeatedPassword: repeatedPasswordOutlet.rx_text.asObservable(),
loginTaps: signupOutlet.rx_tap.asObservable()
),
dependency: (
API: GitHubDefaultAPI.sharedAPI,
validationService: GitHubDefaultValidationService.sharedValidationService,
wireframe: DefaultWireframe.sharedInstance
)
)
Ist dies der richtige Weg, um die Bindung des Login tippen und Textfelder in reaktiver Programmierung?
Bevor ich dieses Beispiel gesehen habe, habe ich eine Funktion in meinem ViewModel onSignUpClick()
erstellt und von den View Controller-gebundenen Klicks, um diese Funktion auszuführen. Ist das eine schlechte Form?
Scheint, wie wenn alles durch die init übergeben wird es in einer sehr fett init-Funktion führt