这篇文章主要介绍“vue和react中的diff有哪些区别”,在日常操作中,相信很多人在vue和react中的diff有哪些区别问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”vue和react中的diff有哪些区别”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
区别:1、当节点元素类型相同,类名不同时,vue认为是不同的元素,会删除重新创建,而react认为是同类型节点,会进行修改操作;2、列表对比时,vue采用从两端到中间的方式进行对比,而react则是从左往右进行对比。
本文操作环境:windows10系统、Vue2.9.6版,DELL G3电脑。
diff算法:
对dom进行different比较不同的一种算法(虚拟)
共同点:
vue和diff算法,都是不进行跨层级比较,只做同级比较
不同点:
1.vue进行diff时,调用patch打补丁函数,一边比较一边给真实的dom打补丁,vue对比节点时,当节点元素类型相同,类名不同时,认为是不同的元素,删除重新创建,而react认为是同类型的节点,进行修改操作
2.vue列表对比的时候,采用从两端到中间的方式,旧集合和新集合两端各存在两个指针,两两进行比较,每次对比结束后,指针向队列中间移动;react则是从左往右一次对比,利用元素的index和lastindex进行比较
3.当一个集合把最后一个节点移动到最前面,react会把前面的节点依次向后移动,而Vue只会把最后一个节点放在最前面,这样的操作来看,Vue的diff性能是高于react的
到此,关于“vue和react中的diff有哪些区别”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注恰卡编程网网站,小编会继续努力为大家带来更多实用的文章!
vue表格组件教程学习(vue proxytable只能在开发环境跨域吗)
vueproxytable只能在开发环境跨域吗?跨域问题来源于JavaScript的同源策略,即只有协议主机名端口号(如...
Vue组件的自定义事件和全局事件总线怎么使用
vue中消息订阅与发布如何使用
vue中消息订阅与发布如何使用这篇文章主要介绍“vue中消息订阅与...
React不将Vite作为构建应用的首选原因是什么
如何使用自定义hooks对React组件进行重构
如何使用自定义hooks对React组件进行重构这篇文章主要介绍了...
Vue显示图片的方式有哪些
vue引入静态jquery报错如何解决
vue引入静态jquery报错如何解决这篇文章主要介绍“vue引入...
基于React和Socket.io实现简单的Web聊天室
React Native Popup怎么实现
怎么使用react-activation实现keepAlive支持返回传参
用户名
密码
记住登录状态 忘记密码?
邮箱
确认密码
我已阅读并同意 用户协议