vue3 diff源码梳理学习笔记

1、只比较同层

2、双端比较

3、判断流程

1、先判断是否是首次渲染;

2、vnode oldvnode 指向同一个对象?

3、oldvnode dom 关联到真实的元素上,依次更新dom上的属性,class style props events;

4、针对简单的文本节点 只需要更新文本内容

5、oldVnode 有子节点,vnode 没有子节点,直接删除oldVnode下的子节点

6、oldVnode 没有子节点,vnode有子节点,直接更新oldVnode下增加子节点

7、oldVnode vnode 都有子节点,则进行子节点对比。

4、patchVnode核心逻辑

1、先比较key,根据 头头,尾尾,头尾,尾头,四种比较类型;当key相同的时候,就进入比较;

相关推荐
m0_47119963几秒前
【场景】用户名+密码+验证码的登录全流程
前端
2301_76444133几秒前
基于python与Streamlit构建的卫星数据多维可视化分析
开发语言·python·信息可视化
恋猫de小郭几秒前
豆包手机为什么会被其他厂商抵制?它的工作原理是什么?
android·前端·ai编程
say_fall2 分钟前
新手避坑指南:C++ 引用、内联函数与 nullptr 全解析
android·开发语言·c++
郝学胜-神的一滴2 分钟前
深入浅出:理解OpenGL的标准化设备坐标(NDC)
开发语言·程序人生·图形渲染
码上成长3 分钟前
长耗时接口异步改造总结
前端·git·后端
中文很快乐3 分钟前
java后端好习惯---新手养成记
java·开发语言·开发好习惯·踩坑日志·新手养成
风华同学4 分钟前
【系统移植篇】系统烧写
java·开发语言·前端
by__csdn6 分钟前
JavaScript性能优化实战:异步与延迟加载全方位攻略
开发语言·前端·javascript·vue.js·react.js·typescript·ecmascript
阿里嘎多学长7 分钟前
2025-12-11 GitHub 热点项目精选
开发语言·程序员·github·代码托管