React与Vue只有骨架,更多的功能如路由、状态管理等是框架分离的组件根据需要装载。
数据双向绑定
相似点:
虚拟DOM,新旧虚拟dom对比,有变化,将虚拟dom渲染到真实dom
不同点:
Vue在渲染过程中,会跟踪每一个组件的依赖关系,不需要重新渲染整个组件树。
它使用基于依赖追踪的观察系统并且异步列队更新,所有的数据变化都是独立地触发,除非它们之间有明确的依赖关系。
React每当应用的状态被改变时,全部子组件都会重新渲染。这可以通过shouldComponentUpdate这个生命周期方法来进行控制。推崇的是函数式编程和单向数据流:给定原始界面(或数据),施加一个变化,就能推导出另外一个状态(界面或者数据的更新)。
组件化:
vue:Vue中指令和组件分得更清晰。指令只封装 DOM 操作,而组件代表一个自给自足的独立单元 —— 有自己的视图和数据逻辑*
react: 一个 React 应用就是构建在 React 组件之上的。
组件有两个核心概念:props,state。
一个组件就是通过这两个属性的值在 render 方法里面生成这个组件对应的 HTML 结构。
构建工具:
react create-react-app 绑定使用webpack 和 babel
vue vue-cli 可选模版,按需使用
循环语句:
react arr.map 需要key
vue v-for
状态管理:
react state 管理,只能通过setState修改
vue data管理 $set进行修改
定位:
vue 适合小型项目
react 适合各类项目