Swift version: 5.6
You should already be familiar with the concept of property observers in Swift – those willSet
and didSet
blocks you can attach to property on classes and structs. Well, those same blocks can be attached to local and global variables as well, allowing you to respond to changes easily.
The syntax is identical: create your variable, give it an initial value, then provide willSet
and/or didSet
closures inside braces, like this:
var name = "Taylor Swift" {
didSet {
print("Name changed to \(name)!")
}
}
name = "Justin Bieber"
That will print “Name changed to Justin Bieber!” when run.
SPONSORED Let’s face it, SwiftUI previews are limited, slow, and painful. Judo takes a different approach to building visually—think Interface Builder for SwiftUI. Build your interface in a completely visual canvas, then drag and drop into your Xcode project and wire up button clicks to custom code. Download the Mac App and start your free trial today!
Sponsor Hacking with Swift and reach the world's largest Swift community!
Available from iOS 8.0
This is part of the Swift Knowledge Base, a free, searchable collection of solutions for common iOS questions.
Link copied to your pasteboard.