I watched some WWDC videos and Apple docs about data binding, and according to my current understanding, @State as a property delegate will provide a binding connection between the view and the annotated property, for example:
@State var myText: String
var body: some View {
VStack {
TextField($myText, placeholder: Text("input"))
Text(myText)
}
}
This will bind myText with the content of the text field I added (i.e. one changes the other will follows up to update)
However, though I know $myText refers to the binding type of Binding, I noticed that Binding is also a property delegate, and I noticed it appears in some code examples from Apple. I have no idea what this is used for as a property delegate. @State already does the binding work, then what do we need @Binding for? Apple docs suck for now about this.