看到老师在这篇回答
https://coding.imooc.com/learn/questiondetail/195765.html
中说了key的作用,但是我还是不太明白。
我自己花了一张图,这里我把 li3 删除掉。
然后在updateChildren过程中,在 li3 与 li4 的比较时会进入 sameVnode(oldStartVnode, newStartVnode) 这个判断,然后 旧的 li3 节点会复用 li4 的 chlidren,然后 li3 仍然留在文档中。
老师说的会导致错误状态的复用是不是指 li3 本身的一些属性没有更新,还是沿用之前的,并且此时文档上的 li3 被错误的认为就是更新后的 li4?
我好像对key理解的还不够,希望老师能详细解答一下。