2016-08-05 53 views
1

我注意到在RxSwift GitHub Login Example是觀測從視圖控制器在初始化傳遞到視圖模型:凡綁定在MVVM觀測?

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 
      ) 
     ) 

這是正確的做法是結合在反應式編程登錄水龍頭和文本字段?

看到這個例子之前,我在視圖模型onSignUpClick()並從視圖控制器綁定點擊創建一個函數來運行該功能。那是不好的形式?

好像如果一切都通過在init通過它導致非常胖初始化函數

回答

1

很難說,如果你以前的做法是不好的形式或沒有的,只有一句話。視圖模型函數如何訪問字段值?它是如何將結果返回給視圖控制器的?爲了給出正確的迴應,我們需要查看代碼。

至於「胖子init」,這可能是個人喜好,但我看不出問題的。這種或那種方式,這些投入將在某個地方處理。所以在init一條線,似乎在結束我的視圖控制器相當渺茫。