我正在使用 Angular 8@ngrx/data
来管理我的实体。当我启动失败的删除操作(服务器返回 500)时,实体会从 ngrx 客户端缓存中删除,尽管它没有在服务器上被删除。
如何防止实体因错误而从缓存中删除?或者如何在出错时将(非)删除的实体重新添加回缓存?
我正在使用 Angular 8@ngrx/data
来管理我的实体。当我启动失败的删除操作(服务器返回 500)时,实体会从 ngrx 客户端缓存中删除,尽管它没有在服务器上被删除。
如何防止实体因错误而从缓存中删除?或者如何在出错时将(非)删除的实体重新添加回缓存?
使用悲观保存https://ngrx.io/guide/data/entity-change-tracker#save-errors
操作名称以 _OPTIMISTIC 结尾的 EntityAction 启动乐观保存。
当保存是“乐观的”时,许多应用程序更容易构建,因为这些更改可以立即用于监视集合选择器的应用程序代码。应用程序不必等待确认实体操作在服务器上成功。
在服务器确认保存成功之前,悲观保存不会更新存储,然后 NgRx Data 将其转换为更新集合的“SUCCESS”操作。悲观保存时,更改将无法在商店中使用