vue和react本质的区别是模板和组件化的区别;vue本质是mvvm框架,由mvc发展而来,而react是前端组件化框架,由后端组件化发展而来。
本文操作环境:windows7系统、react17.0.1&&vue2.0版本、dell g3电脑。
vue和react两个javascript框架都是当下比较受欢迎的,他们两者之间有什么区别?
vue.js是一套构建用户界面的渐进式框架。与其他重量级框架不同的是,vue 采用自底向上增量开发的设计。vue 的核心库只关注视图层,并且非常容易学习,非常容易与其它库或已有项目整合。另一方面,vue 完全有能力驱动采用单文件组件和vue生态系统支持的库开发的复杂单页应用。
react是一个用于构建用户界面的开源javascript库,主要用于构建ui,很多人认为 react 是 mvc 中的 v(视图)。react 拥有较高的性能,代码逻辑非常简单,越来越多的人已开始关注和使用它。
react视图通常采用包含以自定义html标记规定的其他组件的组件渲染。react为程序员提供了一种子组件不能直接影响外层组件(data flows down)的模型,数据改变时对html文档的有效更新,和现代单页应用中组件之间干净的分离。
vue和react的区别
vue和react的本质的区别:模板和组件化的区别
vue本质是mvvm框架,由mvc发展而来;
react是前端组件化框架,由后端组件化发展而来;
数据流的不同:
vue双向数据流 react 单向响应数据流
监听数据变化的实现原理不同
vue 通过 getter/setter 以及一些函数的劫持,能精确知道数据变化,不需要特别的优化就能达到很好的性能
react 默认是通过比较引用的方式进行的,如果不优化(purecomponent/shouldcomponentupdate)可能导致大量不必要的vdom的重新渲染
为什么 react 不精确监听数据变化呢?这是因为 vue 和 react 设计理念上的区别,vue 使用的是可变数据,而react更强调数据的不可变。所以应该说没有好坏之分,vue更加简单,而react构建大型应用的时候更加鲁棒。
因为一般都会用一个数据层的框架比如 vuex 和 redux,所以这部分不作过多解释,在最后的 vuex 和 redux的区别 中也会讲到。
推荐:《js基础教程》
以上就是vue和react本质的区别是什么的详细内容。