随笔分类 -  diff

摘要:代码参照 React 16.13.1 什么是 Diff 在render阶段的beginWork函数中,会将上次更新产生的 Fiber 节点与本次更新的 JSX 对象(对应ClassComponent的this.render方法返回值,或者FunctionComponent执行的返回值)进行比较。根据 阅读全文
posted @ 2023-12-08 18:04 柯基与佩奇 阅读(678) 评论(0) 推荐(0) 编辑
摘要:Diff 更新算法 由于目前Vue3对于性能的优化做了很多的处理,所以其在更新时并不会对所有的节点都进行diff更新。目前会进行diff更新的有以下两种情况: v-for容器节点 自写的render()函数 还有一种特殊情况会进行无diff的按序更新,这种更新是全替换模式,非常耗时: 无key值的v 阅读全文
posted @ 2023-12-08 17:54 柯基与佩奇 阅读(740) 评论(1) 推荐(2) 编辑
摘要:所谓 diff 算法,就是通过比对新旧两个虚拟节点不一样的地方,针对那些不一样的地方进行新增或更新或删除操作。接下来详细介绍节点更新的过程。 首先进行静态节点处理,判断新旧两个虚拟节点是否是静态节点,如果是,就不需要进行更新操作,可以直接跳过更新比对的过程 。 再更新处理新老节点的属性,获取新老节点 阅读全文
posted @ 2023-12-08 17:46 柯基与佩奇 阅读(483) 评论(0) 推荐(1) 编辑

欢迎阅读『diff』
点击右上角即可分享
微信分享提示