Vue 和 React 设计思路
倒退历程
设计原理
vue 是响应式 +vdom, 响应式会告诉呈现了变动,vdom 是不晓得你哪里变动了,须要 diff 计算一下哪里呈现了变动
react 没有响应式,是一个纯正的 vdom
目标和意义
1 react 单向数据流特地易于构建大型项目,不会有问题,facebook 出品,可靠性更好
2 vue 更重视老手的上手难度,为更多的人提供了前端的机会
总之,两个框架都很有意义
语法比拟
react 的 jsx
1 纯动静,能够依照 js 的形式以变量的形式写(var a = <div></div>)
能够任意地位写,react 所有的优化交给了开发着
2 毛病 用于优化的空间不多
vue 的 tempalate
更像 html
受限制,遵循 v -if,v-for 语法
可优化,vue3 为其做 diff 优化
虚构 dom
虚构 dom 呈现起因
1 操作实在 dom 是十分费时的,咱们在内存中用 vdom 来进行 diff 计算,将须要操作的 dom 更准确,而后最小的操作 dom
2 跨平台性
虚构 dom 更新原理
1 响应式被动告诉
2 虚构 dom 被动计算
在 vue 中将下面两个进行配合,依据组件进行划分,组件之间响应式告诉,组件外部,通过 vdom 计算 diff
区别:
vue 利用双端优化,vue3 有最长递增子序列
react 利用 fiber, 工夫切片,将树变为链表
抽象性
react 与 js 很类似
vue 绝对形象,封装了很多的 api
runtime
react 在 runtime 阶段的执行量最重,基本上是把 jsx 转化成 js(React.createElement)
vue 十分中庸,在各个方面都做到温和。为用户做了动态晋升等