我有一个FormTextField输入,它应该用该文本输入更新单独视图模型中的一个变量.

问题是,第一个字母出现在字段中没有问题,但当我单击下一个字母时,它会删除第一个字母.然后,当我再次点击一个字母时,什么也没有发生.然后我再次点击一个字母,同样的事情从头开始.

谢谢你的帮忙!

struct FormView: View {
    @StateObject var listVM = ListVM()
    
    var body: some View {
        NavigationView {
            VStack {
                Form {
                    TextField("Summary", text: $listVM.textInput)
                }

                Button {
                } label: {
                    HStack {
                        Image(systemName: "plus.circle.fill")
                        Text("Add summary").fontWeight(.bold)
                    }
                }.buttonStyle(.borderedProminent)
                    .padding(.top)
                    .tint(.indigo)
            }.navigationTitle("Create summary")
            
        }
        
    }
}

class ListVM: ObservableObject {
    @State var textInput = ""
}

推荐答案

@State仅适用于您应该使用@Published的SwiftUI View

@Published var textInput = ""

Swift相关问答推荐

map 视图上的SwiftUI渐变折线

按Esc键时执行操作(工作表)

在用户将输入保存到SWIFT中的核心数据后,如何创建指向我的应用程序S主页的链接?

try 在小部件内部读取核心数据的SwiftUI总是返回空吗?

在SWIFT中使用Objective-C struct 时出错(在作用域中找不到类型)

Swift 运算符中 inout 的行为

按数组大小进行类型判断?

从文字创建数组时的 Swift 宏

如何在 SceneKit 上制作毛玻璃效果

使用 RxSwift 围绕 async/await 方法创建 Observable

持久化字符串列表属性 RealmSwift

如何在 Swift 中将 XPC 自定义类列入白名单?

使用 DispatchTime.now() + float 延迟?

不能从非开放类继承 swift

如何在 SwiftUI 中创建带有图像的按钮?

Swift中字节数组的NSData

使用 Swift 以编程方式自定义 UITableViewCell

在 Swift 中覆盖 UIScrollView 的委托属性(就像 UICollectionView 一样)

应用程序包不包含有效标识符

如何判断 firebase 数据库值是否存在?