这是由于swiftUI Foreach的onDelete的方法没有兼容上面所述的情况造成的
目前可以使用的的解决办法是这样的:
viewContext.perform {
offsets.map { molts[$0] }.forEach(viewContext.delete)
do {
try viewContext.save()
} catch {
viewContext.rollback()
userMessage = "\(error): \(error.localizedDescription)"
displayMessage.toggle()
}
}
在你的操作方法外,再套一层,调用viewContext.perform即可