一. 类似之处css
二. 不一样之处html
React 组件的状态有变化时,它会以该组件为根,从新渲染整个组件子树,须要使用PureComponent,或是实现shouldComponentUpdate(15)、getDerivedStateFromProps(16)方法进行优化前端
Vue 使得开发者再也不须要考虑此类优化,从而可以更好地专一于应用自己。react
React 它是函数式的思想,把组件设计成纯组件,状态和逻辑经过参数传入,因此在react中,是单向数据流,推崇结合immutable来实现数据不可变。在setState以后会从新走渲染的流程,若是shouldComponentUpdate(15)返回的是true或getDerivedStateFromProps(16)返回的不是null,就继续渲染,若是返回了false,就不会从新渲染,PureComponent就是重写了shouldComponentUpdate,而后在里面做了props和state的浅层对比api
Vue 它是响应式的思想,也就是基因而数据可变的,经过对每个属性创建Watcher来监听,当属性变化的时候,响应式的更新对应的虚拟domdom
渲染方式函数
React 他的思路是all in js,经过js来生成html,设计了jsx,经过js来操做css Vue 提供了渲染函数,同时也支持JSX,默认推荐的仍是模板,任何合乎规范的 HTML 都是合法的Vue模板
React 是类式的写法,api较少组件化
Vue 是声明式的写法,经过传入各类options,api和参数较多性能
React 经过高阶组件来扩展优化
Vue 经过Mixins来扩展