Vue和React的几点区别 1. Vue支持双向绑定,组件与DOM之间通过v-model实现双向绑定 React是单向数据流 2. Vue通过mixins组合不同功能 React通过HoC(高阶组件)来组合不同功能 3. Vue通过setter、getter或函数的劫持来知道数据的变化,Vue使用的是可变的数据 React默认通过比较引用的方式(diff),React强调数据的不变性 4. Vue中组件通信:(1) 父传子:props传递数据或回调 (2)子传父:Event (3)父传子跨越多个层级:provide/inject React中组件通信:(1) 父传子:props传递数据或回调 (2) 子传父:callback (3)父传子跨越多个层级:context 5. Vue在渲染过程中会跟踪每个组件的依赖关系,不需要重新渲染整个组件树,可以更快的计算出Virtual DOM的差异 React在应用的状态被改变时,全部子组件都会重新渲染 6. Vuex使用的是可变数据,通过getter和setter来更新数据,直接修改数据 Redux 使用的是不可变数据,每次都会用新的state来替换旧的state。采用diff的方式来检测数据的变化 参考:Vue和React的区别