Передача Binding вниз
Передавайте состояние во вложенное представление с помощью знака доллара.
«Передача Binding вниз» — бесплатный урок SwiftUI Academy на CoddyKit. Это урок 2 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения SwiftUI Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс SwiftUI Academy содержит 4 уроков всего.
Части этого урока еще не переведены и отображаются на английском.
The Dollar Sign
To turn @State into a binding you pass it, prefix the property with a dollar sign. That hands the child a live connection.
Value vs Binding
Plain name gives the current value. The dollar-prefixed name gives the binding. Same property, two ways to use it.
var count = 0
// count -> the value
// $count -> the bindingOwning the State
The parent declares the source with @State. Only the owner of state can create a binding from it.
struct Parent: View {
@State private var isOn = false
var body: some View { Text("Placeholder") }
}Handing It Off
Inside the parents body, pass the binding into the child by writing the property name with a dollar sign in front.
var body: some View {
ChildView(isOn: $isOn)
}The Child Receives It
The child stores the connection in a @Binding property. Its type matches the value, like Bool or String.
struct ChildView: View {
@Binding var isOn: Bool
var body: some View { Toggle("On", isOn: $isOn) }
}Types Must Match
A binding to a Bool plugs only into a @Binding var isOn: Bool. Mismatched types stop the build until you fix them.
Editing Flows Up
When the child flips its toggle, the change travels straight back to the parents @State. The parent re-renders automatically.
Forgot the Dollar Sign?
Pass the bare value where a binding is expected and Swift complains. The dollar sign is what makes it a binding.
Bindings Go Deep
A child can pass its binding further down to its own children. The same dollar sign threads state through many layers.
Read in the Child
Inside the child, use the plain name to read the current value and the dollar name when a control needs the binding back.
Text(isOn ? "On" : "Off")
Toggle("Power", isOn: $isOn)One Line, Two Way
That single dollar-prefixed argument wires up full two-way sync. Tiny syntax, big power behind the binding. ⚡
Quick Check
Quick check on passing bindings.
Recap: The Dollar Sign Bridge
Own state with @State, pass it down with the dollar sign, receive it as @Binding. That bridge keeps parent and child in sync. 🌉
Часто задаваемые вопросы
Урок «Передача Binding вниз» бесплатный?
Да — полный текст урока «Передача Binding вниз» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс SwiftUI Academy, подпишись на CoddyKit PRO. Курс SwiftUI Academy содержит 4 уроков всего.
Чему я научусь в уроке «Передача Binding вниз»?
Передавайте состояние во вложенное представление с помощью знака доллара. Ты практикуешь SwiftUI Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать SwiftUI Academy?
Предыдущий опыт не требуется. SwiftUI Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 2 из 4.
Сколько времени занимает урок «Передача Binding вниз»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке SwiftUI Academy?
Да. Каждый урок SwiftUI Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Зачем дочерним представлениям нужен @Binding
- Передача Binding вниз
- Создание переиспользуемой строки с переключателем
- @State и @Binding