เป็นไปได้ไหมที่จะอนุญาตให้เรียกใช้ didSet ในระหว่างการกำหนดค่าเริ่มต้นใน Swift
คำถาม เอกสารของ Appleระบุว่า: ผู้สังเกตการณ์ willSet และ didSet จะไม่ถูกเรียกเมื่อคุณสมบัติถูกเริ่มต้นครั้งแรก พวกเขาจะถูกเรียกเฉพาะเมื่อค่าของคุณสมบัติการตั้งค่านอกบริบทการเริ่มต้น เป็นไปได้ไหมที่จะบังคับให้เรียกสิ่งเหล่านี้ในระหว่างการเริ่มต้น? ทำไม? สมมติว่าฉันมีชั้นนี้ class SomeClass { var someProperty: AnyObject { didSet { doStuff() } } init(someProperty: AnyObject) { self.someProperty = someProperty doStuff() } func doStuff() { // do stuff now that someProperty is set } } ฉันสร้างวิธีการdoStuffเพื่อให้การประมวลผลมีความกระชับมากขึ้น แต่ฉันต้องการเพียงแค่ประมวลผลคุณสมบัติภายในdidSetฟังก์ชัน มีวิธีบังคับให้สิ่งนี้เรียกในระหว่างการเริ่มต้นหรือไม่? ปรับปรุง ฉันตัดสินใจที่จะลบเครื่องมืออำนวยความสะดวกสำหรับชั้นเรียนของฉันและบังคับให้คุณตั้งค่าคุณสมบัติหลังจากเริ่มต้น …