我以为我有solution per this question: rendering-incremental-updates-with-ngfor,但是我想问的是是否有可能只向*ngFor
发送增量更改?
例如,假设组件已经渲染了一个包含10个Todo
实例的数组。广播实例的主题是否可能仅发送增量更新?
例如,subject.next(todo)
只能广播刚刚添加的todo
吗?
只看它似乎很明显,因为没有办法知道是否要通过该API调用删除或添加项目,但是我希望可能有类似的东西:
subject.delete(todo)//delete the todo
subject.put(todo)//update todo
subject.post(todo)//add another todo
这些方法会传递其他元数据,从而允许进行增量更改?
答案 0 :(得分:1)
在这种情况下,请使用differs
。将trackBy
添加到*ngFor
角度时,请使用IterableDiffer仅跟踪difference在先前值和当前值之间。
如果您有复杂的数据结构,则可以实现custom differ
。