【发布时间】:2020-01-30 20:55:46
【问题描述】:
我正在开发一个将 Core Data 与 SwiftUI 相结合的应用程序。一切都很顺利,直到我将更新代码放入工作表中,之后我得到了 0 的“Foundation._GenericObjCError”错误,我认为这意味着没有错误,但我的持久化容器仍然没有得到更新。
这种组合是一个已知问题吗?
我用来向我的商店条目添加条目的代码:
struct StoreAdd: View {
@Environment(\.managedObjectContext)
var managedObjectContext
@State
var name = ""
@State
var branch = ""
var body: some View {
VStack {
TextField("Store name", text: $name)
TextField("Store branch", text: $branch)
Button(
action: {
let store = Store(context: self.managedObjectContext)
store.id = UUID()
store.name = self.name
store.branch = self.branch.isEmpty ? nil : self.branch
self.managedObjectContext.persist()
},
label: { Text("Add")}
)
.disabled(name.isEmpty)
}
.padding(.horizontal, 20)
}
}
persist() 是save() 的包装器。
【问题讨论】:
-
stackoverflow.com/questions/58328201/… 看这个。这是 Swift 编译器中的一个错误。