一、React和vue相同点:
- 构建虚拟dom实现快速渲染
- 轻量级
- 易于集成打包工具,路由工具及状态管理工具
- 优秀的支持和社区
二、React和vue有什么区别
- Vue使用的是开发者更熟悉的
模板与特性 : html+css+js 组合模式呈现(template),跟web现有的技术能很好的配合,比较容易 的把 功能和布局 分开,vue更注重前端开发者的习惯,所以更容易被前端工程师接受; 而react使用的是 函数式编程(jsx在js中编译成html),更适合 有函数式编程经验 的开发者 - vue是
自动档 :vue是双向绑定响应式的,数据和界面发生改变时,都会自动更新 而react是手动档 :需要使用setState去触发(比较当前状态和上一个状态) react 比 vue『难』 :react不难,只是需要用到很多原生js方法,对js基础要求比较高(更依赖于jsx 或者诸如class 等es6新特性),定位专家路线;而vue是渐进式框架,快速投入快速结束,注重生产力,搞清楚各项配置的话比react用着顺手,定位入门级框架- React
社区更强大些 ,有更多的插件和工具可以在项目中使用 - 但是在github上r
eact的遗留问题 要比vue多
三、react与vue各自的优点
Vue
模板和渲染函数 的弹性选择(createElement创建h节点)
Vue.component('anchored-heading', {
render: function (createElement) {
return createElement(
'h' + this.level, // 标签名称
this.$slots.default // 子节点数组
)
},
props: {
level: {
type: Number,
required: true
}
}
})
- 简单的语法及项目创建
- 更快的渲染速度与更小的渲染体积
react
- 更适用于大型应用和更好的测试性
- 同时适用于web和原生app
- 更大的生态圈带来更多工具
四、react和vue如何选型
- 应用需要尽可能的小和快就用vue,vue渲染速度比react快
- 大型项目建议用react,因为vue模板的使用不容易发现错误、也不易拆分和测试
- 如果要适用于web和原生app的项目,就使用react native
|