如何使用 Diffable Data Source & NSFetchedResultsController 处理 CRUD 操作

问题描述

我有一个简单的 4 行产品商店屏幕,每行包含 4-5 个产品。

目前我有以下设置

  • Controller 调用后端服务器并获取数据
  • 将模型保存到 Core Data
  • 这会触发 NSFetchedResultsController 的更新
  • 使用 Diffable Data Source 应用新快照

当新产品添加到任何行或以某种方式更新时,此设置非常有效。

但我无法找到如何处理 API 响应中的产品被删除的情况?因为每当我收到响应时,我都会将其保存在核心数据库中,然后依靠 FRC 触发器来应用快照。

因此,如果在响应中删除了现有产品,该产品仍会继续显示在商店中,因为它也需要在数据库删除。所以在保存到数据库之前,我总是必须删除所有现有数据,然后保存新数据以使更改生效。

有人可以建议更改我的设置以处理这种情况或任何特定流程来处理它吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)