Search code examples
swiftmvvmrx-swift

In rxswift I can't send one parameter to CombineLatest. What should I use for one parameter?


In rxswift I can't send one parameter to CombineLatest. What should I use for one parameter?

import Foundation
import RxSwift

struct RegisterPhoneViewModel {

    var phoneNumberText = Variable<String>("")

    var isValid: Observable<Bool> {
        return Observable.combineLatest(phoneNumberText.asObservable()) {phoneNum in
            phoneNum.count >= 11
        }
    }
}

Solution

  • I had to use the ‍map like this

    import Foundation
    import RxSwift
    
    struct RegisterPhoneViewModel {
    
        var phoneNumberText = Variable<String>("")
    
    
        var isValid: Observable<Bool> {
            return self.phoneNumberText.asObservable().map {phoneNum  in
                phoneNum.count >= 11
            }
        }
    
    }