vue和react的区别

自己整理了vue和react的区别,便于更加明显的进行区分:
1、react是纯组件化,通过jsx语法进行函数式编程,单向数据流,而且setstate之后是否重新render是通过shouldComponentUpdate钩子函数来判断,如果返回的是true,那么在setstate之后DOM将会重新render,如果返回false将不会重新render,所以在这方面来说react是否render是可控的
vue是双向数据流,响应式编程,它的一个page都在同一个文件里,通过template、script、css三个模块来生成一个page;通过对每一个属性建立Watcher来监听,当属性变化的时候,响应式的更新对应的虚拟dom。
2、react的性能优化需要手动去做,而vue的性能优化是自动的,但是vue的响应式机制也有问题,就是当state特别多的时候,Watcher也会很多,会导致卡顿,所以大型应用(状态特别多的)一般还是建议用react,更加可控。
3、react是类的写法,基于es6class类语法, 而且它的api很少
vue是声明式的写法,api较多
4、react对于一些语法、指令,判断都是在html结构之间穿插一个 { } 来写js语法,
vue通过一些 ‘‘v-’’ 指令,来进行页面的编写
5、react中通过redux来进行公用数据的管理,通过store、reducer、action来进行数据管理,这几个总结下说,就是:action相当于银行的业务类别,reducer对于不同的类别做不同的处理,通过creatStore(reducer)===》生成store,通过getStore就可以拿到数据,在页面中通过this.props.dispatch()去触发,这个操作应该就类似于我们银行中的
vue中通过vuex来进行数据管理,分为state、mulation、action模块,state定义好公共数据, mulation用于对数据进行操作,action中我一般用来放数据请求,当然,如果过于过得话,我们可以使用vuex中的modules来进行管理,可以让我们得开发更加的简洁明了,页面中通过this.$store.dispatch()去触发
6、对于高阶函数来说,react中采用函数套函数的写法 fn1(fn2)
vue中使用mixins来嵌套

当然,vue和react也有相同之处
一、使用 Virtual DOM
二、提供了响应式 (Reactive) 和组件化 (Composable) 的视图组件。
三、将注意力集中保持在核心库,而将其他功能如路由和全局状态管理交给相关的库。

以上就是我的自我总结,如有不妥之处还望大家指出!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值