如何跟踪rxSwift是否更改了textField值?
我的情况如下: 我收到了textfield的警报。当我在这个文本字段中添加了一个错误的链接并按下发送按钮时,我有一个错误-你的链接不正确。我用关键词过滤,比如输入“facebook”,好的,这个链接是正确的 但是,当我在输入错误链接后在此警报下开始发送新链接时,错误文本不会删除 如何跟踪textField值是否已更改并正确删除此错误文本 这是我的密码:如何跟踪rxSwift是否更改了textField值?,swift,textfield,system.reactive,Swift,Textfield,System.reactive,我的情况如下: 我收到了textfield的警报。当我在这个文本字段中添加了一个错误的链接并按下发送按钮时,我有一个错误-你的链接不正确。我用关键词过滤,比如输入“facebook”,好的,这个链接是正确的 但是,当我在输入错误链接后在此警报下开始发送新链接时,错误文本不会删除 如何跟踪textField值是否已更改并正确删除此错误文本 这是我的密码: button.rx .tap .bind { [weak self] _ in guar
button.rx
.tap
.bind { [weak self] _ in
guard let self = self else { return }
let text = self.textField.text ?? ""
guard
text.contains(self.viewModel.socialType.urlSubstring) else {
self.textField.textColor = .red
self.errorLabel.text = self.viewModel.socialType.error
return
}
self.textField.textColor = .black
self.viewModel.onSend()
}
.disposed(by: bag)
}
谢谢大家! 例如,您可以执行以下操作:
textField
.rx.text.orEmpty
.debounce(.milliseconds(30), scheduler: MainScheduler.instance)//checking timeout
.subscribe(onNext: { [weak errorLabel = self.errorLabel] _ in
errorLabel?.text = nil
}
.disposed(by: bag)