при использовании компонента, такого как текстовое поле или любое Другой компонент, требующий привязки в качестве ввода < /p>
Код: Выделить всё
TextField(title: StringProtocol, text: Binding)
< /code>
и представление с ViewModel, я, естественно, подумал, что могу просто передать свои свойства ViewModel @published < /code> как привязка: < /p>
class MyViewModel: ObservableObject {
@Published var title: String
@Published var text: String
}
// Now in my view
var body: some View {
TextField(title: myViewModel.title, text: myViewModel.$text)
}
< /code>
Но я, очевидно, не могу, поскольку издатель не может действовать как обязательный. Насколько я понимаю, только свойство @State class MyViewModel: ObservableObject {
@Published var title: String
@State var text: String
}
< /code>
И если я не могу, как я могу передать информацию в свой просмотр, когда мой текст обновляется? < /p>
Подробнее здесь: https://stackoverflow.com/questions/614 ... nd-binding
Мобильная версия