angular - 尽管 DELETE 出错,实体仍从缓存中删除
问题描述
我正在使用 Angular 8@ngrx/data
来管理我的实体。当我启动失败的删除操作(服务器返回 500)时,实体会从 ngrx 客户端缓存中删除,尽管它没有在服务器上被删除。
如何防止实体因错误而从缓存中删除?或者如何在出错时将(非)删除的实体重新添加回缓存?
解决方案
使用悲观保存https://ngrx.io/guide/data/entity-change-tracker#save-errors
操作名称以 _OPTIMISTIC 结尾的 EntityAction 启动乐观保存。
当保存是“乐观的”时,许多应用程序更容易构建,因为这些更改可以立即用于监视集合选择器的应用程序代码。应用程序不必等待确认实体操作在服务器上成功。
在服务器确认保存成功之前,悲观保存不会更新存储,然后 NgRx Data 将其转换为更新集合的“SUCCESS”操作。悲观保存时,更改将无法在商店中使用
推荐阅读
- python - Python ijk 乘法,为什么我们使用下面的赋值符号或代码行?
- python - 将字符串与列表进行比较并在python中仅打印匹配的关键字
- javascript - Kendo UI 模板变量范围
- html - GITHUB 页面没有显示在网站上?
- python - return multiple pandas.DataFrames from functions and export as different files?
- python - 用一张图像喂养 keras(预测)
- kubernetes - terraform output Google Kubernetes cluster inggress load balancer ip
- vb.net - Drag and drop for groupbox/picturebox vs textbox vb.net
- angular5 - NgbPopover with Fullcalendar angular 5
- python - 使用 cx_Oracle 的 LIKE 中字符串的正确语法是什么?