存在tag相同而key不同的情况么

来源:4-11 深入diff算法源码-patch函数

雪落无痕2018

2020-03-29

老师请问,存在tag相同而key不同的情况么,如果有的话,那么这个应该怎么进行处理呢,是重新循环二次比较还是直接替换呢,十分感谢。

写回答

1回答

双越

2020-03-29

tag 相同而 key 不同,这种情况太常见了。例如最常用的 v-for ,一般都是这种情况。

遇到这种情况,一般会尝试在统一层级寻找 sameNode ,然后移动。而不是直接替换。具体可以看 updateChildren 的源码分析。

0
1
雪落无痕2018
好的,非常感谢老师的指点,明白了,所以说影响性能应该也是这步出的问题。恍然大悟
2020-03-29
共1条回复

前端框架及项目面试 聚焦Vue3/React/Webpack

面向1-3年前端的框架及项目面试“刚需内容”

4706 学习 · 1669 问题

查看课程