HcySunYang / vue-design

📖 master分支:《渲染器》
http://hcysun.me/vue-design/zh/
6k stars 918 forks source link

inferno算法那里有小bug,没有处理不移动但有新增节点 #292

Open JSerFeng opened 3 years ago

JSerFeng commented 3 years ago

` const prevVNode = h('div', null, [ h('p', { key: 'a' }, '节点1'), h('p', { key: 'b' }, '节点2') ])

// 新的 VNode const nextVNode = h('div', null, [ h('p', { key: 'a' }, 'new 节点1'), h('p', { key: 'c' }, 'new 节点3'), h('p', { key: 'd' }, 'new 节点4'), h('p', { key: 'b' }, 'new 节点2'), h('p', { key: 'g' }, 'new 节点7'), h('p', { key: 'e' }, 'new 节点5') ]) ` 这段示例代码会只渲染出前两个,因为不需要移动,直接退出diff了,没有mount新的

大大,我自己在写一个小框架来总结学习,受到你的渲染器文章的帮助真的很大,真的帮助了我好多,我看过好几遍了,写的时候有些地方忘了也经常回看看你是怎么处理的,真的很敬佩你花这么多时间来无偿输出知识,vue3的issue也秒回我,谢谢