首页 > 代码库 > react diff算法剖析总结
react diff算法剖析总结
原文:https://zhuanlan.zhihu.com/p/20346379
总结一下个人看完之后的理解:
1、tree diff:只对相同层级的节点进行比较,如果子树在新树种不存在了,则直接删除。如果新加了树就是创建,那么如果进行了跨层级的树的移动怎么办?答案是直接删除移动前的树,在移动后的位置创建一颗一模一样的。
所以在react中尽量还是不要进行跨层级的移动。
2、component diff:如果是相同的组件,则继续比较virtual DOM tree。如果不是,则直接删除整个组件并替换成相同的组件
3、element diff:有移动,创建和删除操作,这个不用说都直接什么意思。具体的算法细节可以看原文,这里不深究。
react diff算法剖析总结
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。