[iOS] MVVM
Architecture
ObservableObject
class ObservableObject<T> {
var value: T {
didSet {
self.valueChangedClosure?(self.value)
}
}
private var valueChangedClosure: ((T)-> (Void))?
init(value: T) {
self.value = value
}
func addObserver(isFireNow: Bool = true, _ valueChangedClosure: @escaping (T)-> (Void)) {
self.valueChangedClosure = valueChangedClosure
if(isFireNow == true) {
self.valueChangedClosure?(self.value)
}
}
func removeObserver() {
self.valueChangedClosure = nil
}
}Last updated