【发布时间】:2020-11-24 06:46:31
【问题描述】:
我从Apple official website得到这个关于 ObservableObject 的示例代码
import Foundation
class Contact: ObservableObject {
@Published var name: String
@Published var age: Int
init(name: String, age: Int) {
self.name = name
self.age = age
}
func changeAge() -> Int {
self.age += 1
return self.age
}
}
class Test {
init() {
let john = Contact(name: "John Appleseed", age: 24)
_ = john.objectWillChange
.sink { _ in
print("\(john.age) will change")
}
print(john.changeAge())
}
}
let test = Test()
swift Contact.swift在终端上运行时,结果只有25,但官网显示结果应该是
// Prints "24 will change"
// Prints "25"
为什么第一行Prints "24 will change"没有显示?
谢谢。
【问题讨论】: