2017-08-29 3 views
1

初めてrxSwiftを使用しています。私のビューにテキストフィールドがあり、その値を対応するviewModelsプロパティに設定したいと思います。私は次のコードを持っていますが、エラーをスローします。私はここで何が欠けていますか?テキストフィールドでrxSwiftを設定しますか?

self.loginView.emailTextField.rx.text 
      .bindTo(self.loginViewModel.userEmail) 
      .addDisposableTo(self.disposeBag) 

問題:

タイプの引数リスト '(文字列)'

+0

userEmailは通常の文字列ですか。 Observablesを通常のプリミティブ型にバインドすることはできません –

+0

ビューモデルを表示できますか? –

答えて

0

私はあなたがあなたのViewModelにUSEREMAILた​​めの文字列型を使用したと思うと 'bindTo' を起動することはできません。通常のStringにobservableをバインドすることはできません。あなたのビューモデルの種類は次のようになります。オプションの文字列を使用したい場合は、このようにそれをも行うことができます。また

emailTextField.rx.text.orEmpty 
    .bind(to: viewModel.userEmail) 
    .addDisposableTo(disposeBag) 

:のViewControllerから

var userEmail = Variable<String>("") 

、今のあなたは次のようにバインドすることができます。

var userEmail = Variable<String?>(nil) 
emailTextField.rx.text.bind(to: viewModel.userEmail) 
関連する問題