【发布时间】:2020-05-30 11:38:08
【问题描述】:
我知道 SwiftUI 使用状态驱动的渲染。所以我假设,当我删除核心数据实体条目时,我的核心数据元素列表会立即刷新。 我使用这段代码,成功清理了我的实体:
func deleteAll()
{
let fetchRequest: NSFetchRequest<NSFetchRequestResult> = ToDoItem.fetchRequest()
let deleteRequest = NSBatchDeleteRequest(fetchRequest: fetchRequest)
let persistentContainer = (UIApplication.shared.delegate as! AppDelegate).persistentContainer
do {
try persistentContainer.viewContext.execute(deleteRequest)
} catch let error as NSError {
print(error)
}
}
为了让我的视图中的列表在视觉上是空的,我必须在之后离开视图(例如使用“self.presentationMode.wrappedValue.dismiss()”)并再次打开它。好像这些值仍然存储在内存中的某个地方或某处。 这当然不是用户友好的,我相信我只是监督一些立即刷新列表的东西。 也许有人可以帮忙。
【问题讨论】: