美文网首页
vue or react?

vue or react?

作者: 兰为鹏 | 来源:发表于2020-06-24 19:18 被阅读0次

    为什么不把angular纳入考虑范围?1.国人使用少2.入门难度大。
    据说,在国内互联网,angular、react、vue的使用率分别是5%、25%、70%,难度angular>react>vue
    因此angular一开始就出局。

    vue、react各方面对比

    vue react
    学习难度
    生态
    开发者 尤雨溪 facebook团队
    使用公司 中小型多 大厂多
    核心思想 双向绑定 单向数据流

    一、学习难度

    vue的api比较多,react的api比较少,学完一遍react,基本上不怎么需要看文档了,api很少。后期靠的是js功底。
    vue学习曲线比较平缓,js功底差看看文档也能上手,react学习曲线比较陡,需要一定的js功底。

    二、开发者

    vue的项目是尤雨溪尤大大的个人项目,而react是facebook里面的高级牛逼工程师团队写的。
    个人项目风险较高,万一哪一天不维护了。

    三、使用人数

    1.star
    vue的star167k,略高react 151k,k是千的意思
    2.npm下载
    现在用vue或react一般都用不管是自己配的还是用官方的脚手架(webpack配置),一般从npm去下载包,也不排除老方法下载js,然后用script来引用。


    image.png
    image.png

    我们可以看到react周下载数量是vue的五六倍。

    四、适用场景

    vue更适合小而精的项目,比如移动端(webapp),react更适合大型复杂的项目。一般来说适合大型的应用都是比较难用的,比如java,java为什么比node、php更适合大型web后端项目,为什么ts更适合大型项目,想必为什么react更适合大型项目跟react难用是有关系的。自律使我自由。

    五、生态

    在全球来看,react生态更大,而且react有react-native,虽然vue有weex,但是weex已凉
    而且react周边有大量的库支持。
    而且react社区非常活跃

    共同点:

    1.组件化
    2.虚拟dom
    3.支持ssr。vue->nuxt,react->next
    。。。。

    六、应用

    React:

    蚂蚁数据可视化、爱彼迎、飞猪、阿里大于、虾米音乐、口碑开放平台、猫途鹰、喜马拉雅FM、斗鱼、知乎、豆瓣、美团外卖H5、房多多、石墨文档、墨刀、TalkingData、xiaopiu、Teambition、Uber、倍洽、同盾科技、心知天气、拼多多(APP内嵌H5)、滴滴出行、Sentry、途牛、优酷、京东服饰+生鲜+旅行+赚钱H5、瓜子金融H5、算力矩阵、链家H5、阿里云管理后台、Coding、CodePen、树莓派、36氪、Notion、GoDaddy、站酷海洛、Plotly、麦客CRM、特赞营销日历、鹿班、网易云阅读PC端+网易云音乐H5、猎聘网、看云文档编辑页、NIKE官网、丁香医生、去哪儿H5多个模块、艺龙H5个别模块、租租车H5、汽车之家车商城、PayPal中国、Pocket、友盟、iH5...

    Vue:

    饿了么、爱奇艺、中国平安H5、简书、途虎养车、小红书、乐视商城、手机搜狐、优酷、土豆、掘金、微博H5、大麦网H5、唯品会H5、小米商城H5、芒果TV移动版、哔哩哔哩、又拍云、七麦数据、OneAPM、阿拉丁小程序统计、网易云信+手机网易+网易邮箱H5登录页、今日头条+西瓜视频网页版、贝店(APP内嵌H5)、大搜车、滴滴开源、高德开放平台、京东拼购+领券+新人频道H5+京东云、瓜子二手车H5、土巴兔、分期乐、BITMAIN、小猪短租H5、IT桔子、创业邦H5、拍拍贷、极客邦科技+极客时间、开源中国、少数派、蓝湖、百度指数、微信公众平台、大鱼号(UC云观)、创客贴、兑吧、国美电器H5、聚美优品触屏版、钱咖、试客小兵、赚客、雪球财经、电玩巴士、Hao123触屏版、弹个车、携程H5多个模块、穷游网、一加手机...AngularJS(免费赠送的):百度脑图、eolinker、海致BDP、极光、Worktile、锤子科技官网、微信网页版、iTunes Connect、阿里云管理后台、鲸准对接平台...

    综合来看就是Vue做前台展示居多,React偏后台管理居多。

    七、核心思想

    react
    1 、函数式思想,all in js ,jsx语法,js操控css
    2、 单项数据流
    3、 setState重新渲染
    4 、每当应用的状态被改变时,全部子组件都会重新渲染。当然,这可以通过shouldComponentUpdate这个生命周期方法来进行控制,如果为true继续渲染、false不渲染,但Vue将此视为默认的优化。

    vue
    1 、响应式思想,也就是基于数据可变的。把html、js、css、组合到一起,也可以通过标签引擎组合到一个页面中
    2、 双向绑定,每一个属性都需要建立watch监听(页面不用,涉及到组件更新的话需要)
    3、 Vue宣称可以更快地计算出Virtual DOM的差异,这是由于它在渲染过程中,会跟踪每一个组件的依赖关系,不需要重新渲染整个组件树

    最后

    react能做的,vue也能做,vue能做的,react也能做。选择哪种框架一般看业务场景、技术负责人擅长哪种。
    不管项目中使用哪种,我觉得两种都可以学一学,可以精通其中一种。
    引用滴滴某hr的一句话,要react和vue都会的同学,不然干不了活。

    相关文章

      网友评论

          本文标题:vue or react?

          本文链接:https://www.haomeiwen.com/subject/syxdfktx.html