[英]combineLatest on array in RxSwift
下面的代码是Ash Furrow在FRP演示中和使用RxSwift演示的。 不幸的是,RxSwift的“ combineLatest”运算符最多只允许10个可观察对象。 我正在寻找一种变通方法,以获得相同的结果,但是要在一系列可观察对象上。
有任何想法吗?
class SignupDemoViewController: UIViewController {
@IBOutlet weak var emailAddressTextField: UITextField!
@IBOutlet weak var passwordTextField: UITextField!
@IBOutlet weak var signupButton: UIButton!
let disposeBag = DisposeBag()
override func viewDidLoad() {
super.viewDidLoad()
let emailIsValid = emailAddressTextField.rx_text >- map (isEmail)
let passwordIsValid = passwordTextField.rx_text >- map (isPassword)
combineLatest(emailIsValid, passwordIsValid)
>- and
>- signupButton.rx_subscribeEnabledTo
>- disposeBag.addDisposable
signupButton.rx_tap
>- signup
>- display
>- disposeBag.addDisposable
}
}
从RxSwift-2.0-alpha.1向前的版本开始支持CombineLatest和zip的阵列版本。
希望这可以帮助。
现在是Observable.combineLatest(array)
而不是array.combineLatest
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.