Angular ngrx/7中addOne和upsertOne之间的差异

Angular ngrx/7中addOne和upsertOne之间的差异,angular,entity,adapter,ngrx,Angular,Entity,Adapter,Ngrx,据我所知,ngrx/实体适配器的文档 addOne:向集合中添加一个实体 upsertOne:在集合中添加或更新一个实体 updateOne:更新集合中的一个实体 为什么我们在这里需要upsertOne,而我们有addOne和updateOne? 所以我可以在两种情况下都只使用upsertOne:添加新项目还是更新新项目?文档让我有点困惑updateOne:将实体添加到集合中,如果实体已处于存储状态,则不执行任何操作 upsertOne:将实体添加到集合中,如果实体已经存在,则更新存储中的现有实

据我所知,ngrx/实体适配器的文档

addOne:向集合中添加一个实体 upsertOne:在集合中添加或更新一个实体 updateOne:更新集合中的一个实体

为什么我们在这里需要upsertOne,而我们有addOne和updateOne?
所以我可以在两种情况下都只使用upsertOne:添加新项目还是更新新项目?文档让我有点困惑

updateOne
:将实体添加到集合中,如果实体已处于存储状态,则不执行任何操作
upsertOne
:将实体添加到集合中,如果实体已经存在,则更新存储中的现有实体

hi@imdeschryver:您的意思是:更新一个:不使视图重新渲染upsertOne:是否使视图重新渲染?2.为什么不使用upsertOne来覆盖updateOne?如果集合中不存在实体,upsertOne将创建一个实体,而updateOn将不执行任何操作,因为该实体不在集合中。重新渲染仅在状态更改时发生,因此方法会导致新渲染。