一、相同之处
二、不同之处
UI编程
React 通常使用 JSX
Vue 还多支持模版语法,模版语法有个优势,会针对静态的HTML元素进行优化
性能优化
React 需要编程者的js水平高一些,性能优化需要自己有选择的减少diff。
Vue 框架本身有性能优化的优势,一般不需要程序员做出太多优化。
当然,React 应用本身也很少遇到性能瓶颈,即使不优化也不会有太大的问题。
虚拟 Dom 的 diff 不同
React 比较彪悍,前后构建虚拟 Dom tree,然后比较不同。
Vue 有数据劫持,可以清晰的知道 Dom tree 的更改部分。
数据
React 强调数据的immutable,即数据不可变性,这种特性可以轻松实现时间旅行,但是setState是反人类的,该方法是异步的,用队列保存更改,会在某个时间段的一起更改所有数据。
Vue 则是mutable,JS 就是这样的语言,数据随便变。
编程方式的不同
React 的重心已经转移到函数式编程,hooks 基本上废掉了过去大部分基于组件的逻辑抽象模式。
Vue 是基于OOP形式的,虽然 React也有。
上手难度
哈哈哈,React 比较自由,api也少,但是对开发者的水平要求高。
Vue 相对规矩多,但是对新手友好,新手可以快速上手。