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