前言
Vue的核心思想是尽可能的降低前端开发的门槛,是一个灵活易用的渐进式双向绑定的MVVM框架。
React的核心思想是声明式渲染和组件化、单向数据流,React既不属于MVC也不属于MVVM架构。
1.数据流渲染
1.vue在渲染数据的时候,是双向绑定
2.react没有数据双向绑定,react是单向数据流
2.使用场景
react:期待构建大型应用程序,期待同时适用与web端和原生app的框架,期待最大的生态系统。
vue:期待模板搭建应用,期待简单和能用就行的东西,期待应用尽可能的小和快。
3.写法
Vue的组件写法是通过template的单文件组件格式。
React的组件写法是JSX+inline style,也就是吧HTML和CSS全部写进JavaScript中。
4.React的diff和Vue的diff算法
vue和react的diff算法都是进行同层次的比较,主要有以下两点不同:
vue对比节点,如果节点元素类型相同,但是className不同,认为是不同类型的元素,会进行删除重建,但是react则会认为是同类型的节点,只会修改节点属性。
vue的列表比对采用的是首尾指针法,而react采用的是从左到右依次比对的方式,当一个集合只是把最后一个节点移动到了第一个,react会把前面的节点依次移动,而vue只会把最后一个节点移动到最后一个,从这点上来说vue的对比方式更加高效。
本文对比了Vue和React两大前端框架。Vue是渐进式双向绑定的MVVM框架,React是单向数据流。在数据流渲染上,Vue双向绑定,React单向。使用场景各有侧重,写法也不同。此外,还对比了两者的diff算法,指出Vue的对比方式更高效。
3678

被折叠的 条评论
为什么被折叠?



