[好文加精] 为什么我们放弃了 Vue? Vue 和 React 深度对比

2020-08-06 21:11:44 +08:00
 zhdsuperm

我使用 Vue 和 React 已经很长一段时间了,两个框架上实践代码量都在 10 万行以上。不得不说两者都是很 nice 的,帮助开发者减少很多工作量,这类框架是现代化前端开发必备的。然而 Vue 和 React 两者之间的选择并不像选择苹果或香蕉一样简单,两者在工程实践上的差距让我们逐渐放弃了 Vue 。本文以不一样的角度对两者进行深度对比。

...

那东西就是全局作用域。拿“允许在全局作用域上随便放东西很方便”作为优点的话,和“允许随地大小便会很方便”有什么区别……

见下面长文。(^__^) 嘻嘻……
为什么我们放弃了 Vue ? Vue 和 React 深度对比

4761 次点击
所在节点    前端开发
29 条回复
putaozhenhaochi
2020-08-06 21:18:28 +08:00
@Evan You
loading
2020-08-06 22:01:01 +08:00
看看,我用 vue 2 没多久,听说 vue 3 很差,有点想换 react 了。
zhdsuperm
2020-08-06 22:03:33 +08:00
@loading Vue 3,function API 没好多少,可以看上文里面的写法对比,还不如 class 写法。如果你原先会 Vue 切换到 react 很轻松,概念两者都差不多的。建议你试试
Wincer
2020-08-06 22:05:35 +08:00
每次谈论到 vue 和 react 的时候帖子总少不了争论,结果还是谁也说服不了谁。。
zoharSoul
2020-08-06 22:05:41 +08:00
[好文加精] 是什么鬼...
Jirajine
2020-08-06 22:08:29 +08:00
写的挺好的,vue 、go 、css 都是那种看起来简单,实际上坑很多的东西。
vue3 改进了 ts 的支持,以及抄了不少 react 的东西缝合进来,倒也值得一看,就是没有 react 那么优雅一致性好。

推荐阅读
https://medium.com/actualize-network/comparing-frontend-approaches-part-7-final-thoughts-69cdba516f86
这一系列文章,分别用 jQuery 、vue 、react 、elm 写同一个应用,能清晰的感受它们的区别。
gouflv
2020-08-06 22:11:02 +08:00
就说同样一套 ant design,react 写的很正常,vue 版本那 jsx 源码跟天书一样。虽然不排除人的因素,但是能看出两个适用范围还是有挺大差别的
zhdsuperm
2020-08-06 22:16:55 +08:00
@gouflv 是的 vue 版本的 antd 有部分作者用模板写不下去了,用 jsx 搞定了
suzic
2020-08-06 22:22:09 +08:00
Vue 项目解决 bug 和疑难杂症三大定理

没有什么是 deep watch 解决不了的,有就加 immediate
事件相关,dom 相关记得 nextTick
实在不行,就用 setTimeout

哈哈哈,多么痛的领悟!一定是改了不少的 bug 吧!
zhdsuperm
2020-08-06 22:25:12 +08:00
@suzic 我以前以为时我比较挫,代码写的烂才这样。。。直到一位师兄给我普及三大定理
zhdsuperm
2020-08-06 22:26:35 +08:00
@zoharSoul 自己加的,哈哈哈
anguiao
2020-08-06 22:28:25 +08:00
一般不轻易用 setTimeout(),前天花了 3 个小时,就为了把一个 setTimeout()换掉。
最后解决了,很开心,哈哈。
zhdsuperm
2020-08-06 22:40:41 +08:00
@anguiao 哈哈哈 看到我以前的样子,╮(╯▽╰)╭ 换了 react 整个人都变好了
maomaomao001
2020-08-06 22:51:03 +08:00
文章挺长的

vue 的 Composition API 根本不是 无状态组件了 (和 react function component + hook 一样) , 不能把它归类为无状态下

而且, 状态管理 redux 也不是唯一唯一方案 , react + mobx 的组合其实也不少

代码行数的比较也比较可笑 ...


不过,我怎么感觉是推广文 ?
maomaomao001
2020-08-06 22:51:46 +08:00
@zhdsuperm 为什么不看看 vue 3 Composition API 的起源目的呢
zhdsuperm
2020-08-06 22:58:22 +08:00
@maomaomao001 恩恩 起源目的这块我没了解过,Vue 3 可以说实践上没用过,我应该试试,增加对比。不过代码行数这块还是有意义的,同样的功能,少了很多缩进以及括号对维护很有帮助(代码上量后)。当然如果公司把行数作为 KPI 指标的话,那......
revalue
2020-08-06 22:58:30 +08:00
真以为尤雨溪不上 v 站?
murmur
2020-08-06 23:06:45 +08:00
@revalue 尤雨溪刷知乎吧?
wxsm
2020-08-06 23:06:59 +08:00
再好的框架,配上垃圾程序员也能写出屎来。
再屎的框架,配上优秀程序员也能写出花来。
奉劝你们多提高自己的姿势水平,不要整天想搞大新闻。
murmur
2020-08-06 23:07:54 +08:00
对于这种东西,我就一句话,以前 jquery 做大项目,现在有了 vue 不行了,是人水了还是矫情了?

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

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

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

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

© 2021 V2EX