【发布时间】:2019-12-22 22:47:39
【问题描述】:
我正在玩 SwiftUI,我有一个看起来像这样的类:
class Foo: ObservableObject {
@Published var foo: Int! { // Implicit unwrapped optional
didSet {
print("foo")
}
}
init() {
self.foo = 1
}
}
didSet 总是被调用。根据Apple docs,不应调用它。 @Published 属性包装器有什么特别之处吗?
【问题讨论】:
-
在 Xcode 11.2.1 上测试 -
didSet在代码快照的初始化期间不会被调用。以及没有@Published。 -
我在 Xcode 11.3 (11C29) 上测试过 - 在代码快照的初始化过程中不会调用
didSet(正如 @Asperi 所写) -
对不起,我打错了。检查有问题的更新代码。 @Asperi