React与Vue比较

Vue和React设计思路

发展历程

image.png

设计原理

vue是响应式+vdom,响应式会通知出现了变化,vdom是不知道你哪里变化了,需要diff计算一下哪里出现了变化
react没有响应式,是一个纯粹的vdom

目的和意义

1 react单向数据流特别易于构建大型项目,不会有问题,facebook出品,可靠性更好
2 vue更注重新手的上手难度,为更多的人提供了前端的机会
总之,两个框架都很有意义

语法比较

react的jsx
1 纯动态,可以按照js的方式以变量的方式写(var a =


可以任意位置写,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非常中庸,在各个方面都做到温和。为用户做了静态提升等

你可能感兴趣的:(React与Vue比较)