分类:
技术课程
React和Vue对比
相同点:
数据驱动视图,提供响应式的视图组件
都有Virtual DOM,组件化开发,通过props参数进行父子组件数据的传递,都实现webComponents规范
数据流动单向
都支持服务端渲染
都有支持native的方案,React的React native,Vue的weex
不同点:
社区:React社区还是要比vue大很多;
开发模式:React在view层侵入性还是要比Vue大很多的,React严格上只针对MVC的view层,Vue则是MVVM模式的一种实现;
数据绑定:Vue有实现了双向数据绑定,React数据流动是单向的
数据渲染:对于大规模数据渲染,React要比Vue更快,渲染机制启动时候要做的工作比较多;
数据更新方面:Vue 由于采用依赖追踪,默认就是优化状态:你动了多少数据,就触发多少更新,不多也不少。React在复杂的应用里有两个选择:
(1). 手动添加 shouldComponentUpdate 来避免不需要的 vdom re-render。 (2).Components 尽可能都用 pureRenderMixin,然后采用 redux 结构 + Immutable.js;
开发风格的偏好:React 推荐的做法是 JSX + inline style,也就是把 HTML 和 CSS 全都写进 JavaScript 了,即"all in js";Vue进阶之后推荐的是使用 webpack + vue-loader 的单文件组件格式,即html,css,js写在同一个文件;
使用场景:React配合Redux架构适合超大规模多人协作的复杂项目;Vue则适合小快灵的项目。对于需要对 DOM 进行很多自定义操作的项目,Vue 的灵活性优于 React;
评价