我是ReactiveCocoa的新手,我試圖弄清楚按鈕點擊時驗證表單輸入的語法。 validTextSignal有相當多的示例代碼,但其中大多數或者掛鉤到Action-enableIf中,或者直接處理UI綁定。ReactiveCocoa 4 - 在按鈕點擊時驗證輸入需要幫助
這個想法很簡單,我有一個登錄屏幕,用email
和password
輸入。我想要的是在Login
點擊處理驗證以顯示UIAlertView(例如「請輸入您的電子郵件」)。
下面是我在一段時間後發現的代碼,但我不確定是否應該這樣做。
self.s_formErrorMessage <~ combineLatest(s_email.producer, s_password.producer)
.map({ (email, password) in
if adminNumber.isEmpty {
return "Please input admin number"
} else if password.isEmpty {
return "Please input password"
}
return ""
})
下面是我如何使用它,只是簡單的按鈕TouchUpInside
btn_login.rac_signalForControlEvents(.TouchUpInside).subscribeNextAs { (button: UIButton) in
if !self.viewModel.s_formErrorMessage.value.isEmpty {
self.showAlert("", message: self.viewModel.s_formErrorMessage.value)
}
}
而且使用的值,反正是有,我們可以從行動-enableIf錯誤的捕捉中斷的事件?
任何有關更好方法的建議都會受到很大的關注。
乾杯