0
我想知道我怎么能做到以下几点:如何更新Swift中的任务?
var x = Observed<String>("hello")
label.text = x
别的地方x
更新:
x.value = "World"
然后label.text
自动更新。以下是我对Observed
到目前为止
class Observed<T> {
typealias Observer = (T)->()
var observer: Observer?
var value: T {
didSet {
if let observer = observer {
observer(value)
}
}
}
init(_ v: T) {
value = v
}
}
我相信这是有点什么RxSwift等你,但是这是矫枉过正,我做什么
查看[Apple的语言文档]中的属性观察者(https://developer.apple.com/library/content/documentation/Swift/Conceptual/Swift_Programming_Language/Properties.html#//apple_ref/doc/uid/TP40014097- CH14-ID254)didSet将在属性调用时调用 – Mark