基础:
vue 是双向绑定,MVVM
react 是单项数据流 ui = f(data)

进阶:
vue 早就不强调 MVVM,主要强调数据响应式(核心),也早就没有了双向绑定,全篇文档就只有 v-model 出现了这个词。
react 核心的函数式,(无副作用,引用透明,纯函数,数据不可变)这些词 vue 从来不会提到,绝对不会说,hook 是怎么实现在函数里实现状态

vue 是一个以数据响应式为核心的 ui 框架,她的核心思想是吧所有的数据放进一个对象,然后操作这个对象,对象被监听对改变以后去改变ui。
react 用一个函数来表示一个组件,你爸数据放进去,他就会把数据渲染进去,然后我们在放数据的时候,我们要做到数据不可变,不能像vue那样去改变之前的数据,而是新生成一个跟之前不一样的数据,然后塞到函数里,然后这个函数会生成新的 ui,之后通过 dom diff 对比这两个ui,得到一个patch,然后把这个patch更新到dom树立,
这个思想完全和vue不一样,有没有发现vue是不需要dom diff,数据一变去更新相关的ui就好了,为什么vue 也有dom diff呢?vue是为了解决另一个问题,server render 问题,解决模版优化的问题而不是 ui 的问题。react 是需要的,他得到的是两个不同的ui, 通过 diff 一下才知道那里需要更新。

定位:这俩定位是差不多的,都是处理 UI 层的,只不过 Vue 提倡渐进式处理,功能可以一点一点加上去,但是 React ,如果你要用,你需要重新写,需要加入 webpack jsx
写法:Vue 推崇模版语法,好像还是在写 HTML,而 React 完全相反,所有东西都写在 JS 里面,使用 JSX 语法, 但是 Vue 也可以用 JSX
Hooks:最新版的 Vue 有 Composion Api 和 react 的 hooks 差不多。
UI 更新策略:React 每次都会生成新的数据,通过 dom diff 来更新,而 Vue 是数据响应式,哪里变了哪里更新
文化:Vue 社区全家桶都准备好了,Vue-router,vuex,以前还有 vue-resource,现在没了,而 React,单纯的库,自己去社区找。