【发布时间】:2020-07-06 20:13:25
【问题描述】:
我有一个获取请求,以及一个列出项目的 foreach 循环。如何编写一个函数来删除该集合中的所有项目?
@FetchRequest(
entity: TaskItem.entity(),
sortDescriptors: [NSSortDescriptor(keyPath: \TaskItem.completedDate, ascending: false)],
predicate: NSPredicate(format: "isComplete == %@", NSNumber(value: true))
) var taskItems: FetchedResults<TaskItem>
ForEach(taskItems, id: \.self) { item in
Text("\(item.title)")
}
我有这个功能可以删除单个项目。可以调整此代码并用于删除所有项目吗?
func deleteTask(indexSet: IndexSet) {
let source = indexSet.first!
let taskItem = taskItems[source]
managedObjectContext.delete(taskItem)
saveTasks()
}
【问题讨论】:
-
什么所有元素?全部在集合中还是您已获取的所有对象?无论哪种方式,您都应该查看this question