大家来聊聊 React 和 Vue3 在 2020 年 10 月这个时间点的选择

2020-10-09 16:30:59 +08:00
 woodytang
React16 和 vue2 我都有长期使用
Hook 出来后,加上有 ts 支持,感觉 React 把 Vue 秒成渣
现在 Vue3 出来后,除了性能有提升,感觉没有太多原创性的东西,或者原创性和 react 不在一个量级,当然,vue 在自己的渲染机制下,对 react 提出来的新特性做出了一些优化。

总的感觉就是,react 的设计哲学是紧贴 JavaScript 的,需要你 JavaScript 有深入的理解,而 vue 的设计思路,是让你忘记 Javascript,按照 vue 的语法糖,谁都可以快速上手,让你把精力放在业务上。

所以 vue 就很受欢迎,因为 JavaScript 这个语言真的很难,神经病一样的难度,vue 可以绕开这个难度,马上上手干活。那些培训学校更加喜欢 vue,学 vue 就可以找到工作,如果让他们教 JavaScript,那简直要了老命了。有了培训学校的拼命推广,Vue 就更受欢迎了。

但是随着前端工程师水平提升,更深入学习 Js 后,很有可能感觉到 vue 本身设计没错,但是由于自己掌握了 JavaScript 核心原理了,vue 一些设计和黑魔法就显得多余了,不如直接写 js 来得方便。

从这点上,我个人实际的经验,React 的项目维护性要稍微好点,但是团队选型,要慎重,对 js 还是有些要求的。
6861 次点击
所在节点    程序员
47 条回复
0bit
2020-10-09 16:41:52 +08:00
没必要一捧一踩,容易变成站队互喷贴。

各有优缺点吧,Vue 上手确实会更容易些,不过我也更喜欢 React 。
chenpingan
2020-10-09 16:44:06 +08:00
react 配合 hook 是真的很好用
dcalsky
2020-10-09 16:47:08 +08:00
但凡玩过几年前端,react 和 vue 都可以随意切换着写吧?项目选择的话看成员投票就行了,都很好。但是 vue3 还要观望,生态没跟上。
anjianshi
2020-10-09 16:51:54 +08:00
个人感觉,React 就像王者荣耀里的露娜,上手不容易,玩好更难,但上限很高,真的玩好了会非常秀。
Vue 就有点像亚瑟,上手容易,但上限不高,即使再熟练,也搞不出太秀的操作。

从团队角度:
- 团队技术水平高,代码规范,用 React 更灵活。
- 团队技术水平一般,用 Vue 更保险,出 bug 几率低点,也不容易写出很难维护的代码。

从个人角度:
- 使用 React 的同时也是在加深自己对编程、函数式等等概念的理解,提升思考能力。慢慢的会有所积累和成长。
- 而使用 Vue 一般能更快完成任务。但是个人感觉在技术方面的成长有限。
gowk
2020-10-09 16:57:29 +08:00
来了,来了,他们又来了
momowei
2020-10-09 16:57:32 +08:00
跟人有关系,不过中国肯定 vue 压倒性 react,除了那几个大厂
clf
2020-10-09 17:06:03 +08:00
菜鸡前端谈一谈对两个框架的理解:Vue 的特点是它帮你做了很多东西,开发的时候主要关注业务的实现,上手开发比较容易; React 则是相对比较简单但很灵活,自己想实现一些功能就需要造轮子或者用别人写好的轮子,所以 React 的轮子贼多。

前端的编程思想基本都有一定的共性,两个框架各有千秋,选择看公司团队水平和项目需要。
freak118
2020-10-09 17:12:41 +08:00
vue 能火就是因为一个原因 这个框架能让 30 分水平的人写出 60 分的代码
woodytang
2020-10-09 17:14:58 +08:00
@0bit 没有贬低 vue 的意思,整体设计上,vue2 打不过 react16.8 是事实,vue3 是和 react16.8+ 是同级的,只是觉得这个话题经常被聊到,我想把观点表达得更直接点,不站队,两个框架我都会在不同场景下选择使用
9ki
2020-10-09 17:15:14 +08:00
vue3 的 hooks 心智负担比 React 低,如果喜欢 hooks 更推荐 vue3,当然现在 vue3 生态不太行,vue router, vuex, andv 也还在 beta,如果对生态有要求还是推荐 react
当然,我选 vue3
PhpBestRubbish
2020-10-09 17:15:52 +08:00
争论这些东西有用吗?我一个搞 PHP 的,vue react 照样会玩。
"远古"时期的 Angular 那么屌,现在还有人用吗?
9ki
2020-10-09 17:18:00 +08:00
@9ki 放杠补丁:vue3 和 react 的 hooks 不是同一套东西,只是形式一样
woodytang
2020-10-09 17:29:33 +08:00
@PhpBestRubbish 没争没争,快下班了,摸鱼胡侃一下,话说 Laravel 和 vue 是一个调调,流行的原理都差不多,当年 vue 就是在 laravel 社区发家的。
Laravel 之所以能活到现在,就是因为它把自己搞得和 php 没什么关系了
woodytang
2020-10-09 17:36:07 +08:00
@9ki react 的 hooks 心智负担 现在大家都在讨论这个,,但是我很怀疑这个命题本身。
vue3 精准渲染,拿对象存状态,react 暴力刷新加钩子, 但是我觉得 react 这种方式更原生,你理解它就是这样设计的,就没什么负担

就好比,数据库更新,你说是清空重新填充负担大,还是增量更新负担大,我觉得第一个逻辑简单开销大

说到底,react 和 vue 核心就是 immutable 和 reactive 的区别
gouflv
2020-10-09 17:38:42 +08:00
记得 vue3 说要改进模版对 ts 的支持?想想还是有点小期待
crclz
2020-10-09 18:05:18 +08:00
angular
wxsm
2020-10-09 18:13:26 +08:00
Vue3 的 block tree 和 vite 是 react 没有的。并且由于 jsx 的高度自由性,react 可能无法实现 block tree 级别的优化。
wxsm
2020-10-09 18:15:05 +08:00
@gowk 前端的这种对比很常见,也很正常。没必要带节奏。
VDimos
2020-10-09 18:23:55 +08:00
真的月经贴吗,每个月都发。。。
wanguorui123
2020-10-09 18:25:33 +08:00
现在前端概念太多,感觉搞复杂了。虽然我在用 React 和 Vue,有点背离 Web 设计原则的初心

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/713379

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX