fix(cdk:virtual): render pool item with same item key is not reused #1910
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
when all data is re-rendered, pooled items were asigned to data with different item key
PR Checklist
Please check if your PR fulfills the following requirements:
What is the current behavior?
在全部数据被重新渲染之后,所有的渲染池元素被回收并重新分配,当新添加的数据在上次渲染的数据前面时,会将已经回收的元素先分配给新数据,导致老数据在渲染时视图的key与上次渲染不一致。
What is the new behavior?
修复以上问题
Other information
会进行两次遍历,第一次筛选出上一次渲染的数据并分配原本的渲染池元素,第二次遍历剩余的新数据元素从渲染池中按顺序分配元素