1
我有以下代碼:RxSwift初始值綁定時可變
import RxSwift
import RxCocoa
class ViewModel {
var text = Variable<String>("")
init() {
text.value = "hello"
}
}
class ViewController: UIViewController {
@IBOutlet weak var textView: UITextView!
@IBOutlet weak var counterLabel: UILabel!
var viewModel = ViewModel()
let disposeBag = DisposeBag()
override func viewDidLoad() {
super.viewDidLoad()
textView.rx.text
.orEmpty
.debug()
.bind(to: viewModel.text)
.disposed(by: disposeBag)
}
}
的結合工作正常(當我改變了UITextView
它正確地更新viewModel
然而,由於結合是單向的(或因此我。理解),該textView
不與我在ViewModel
的init
方法設置的值開始。
之前只是結合我可以做textView.text = viewModel.text.value
,但因爲我使用RxSwift,我想了解什麼是平常這裏練習