这两个设计理念上就有所区别,类比过来就是:Vue 是自动挡汽车,React 是手动挡汽车。

在 Vue 中,不需要去注意视图和数据的一致性,因为有双向绑定看帮你处理,响应式的。还有一些很方便的 v-if、v-model 之类的都已经封装好了。就像是自动挡不需要踩离合、不需要思考速度与档位,想加速就踩油门,想减速就踩刹车。但是如果想实现一些更加细节的操作,就像自动挡没法精准自如控制档位,而不便于处理了。

在 React 中,一切都在 js,函数式编程是它的特点。只要 js 的基础好,写起来非常顺手,就像是后端开发的思维一样,一切全部用 js 写出来,因此可发挥的空间非常大。就像是手动挡一样,老司机可以开出平稳、快速且耗油低的操作,可以玩出弹射起步之类的花样。但是这就意味着一切要自己控制,相对来说需要做的事情多些。

实际上,除了 Vue,现有的各种操作系统,或多或少都封装了一些操作。每次都返璞归真手敲一个系统出来,显然是不现实的。

说到底,排斥 Vue 的背后是对 “封装” 的某种污名化。

“封装” 不应该成为一个贬义词,相反,它意味着嵌入、集成和定制化的潜力。 尤其是进入云原生时代以后,标准的 API / SDK 对快速开发新系统的赋能作用更加明显。我们现在的所有创造都是建立在前人基础上的,只有这样才能更快地发展前进。

当然,Vue 不是最出色的,但也不能毫无原则地 “拉踩”。

我们首先要看写给谁,然后再看写什么,也就是要先弄懂自己的需求,才好选择工具。就像Vue 和 React 都有自己的受众,都处于正在发展壮大的阶段,都可以写出很棒的产品,谁也不拉跨。
所以不要带有 Vue 的思维去写 React,他们本身的理念是不同的,当然你也可以通过 React 实现类似于 Vue 的特性来,那这样就没有什么区别和优势了。

最终还是因人而异,就像是手动挡一样,尽管现在的车大多是自动挡,但是依旧有非常多的人,喜欢手动挡的操控感觉。而最终,选择适合自己的 Vue 或者 React 便可以了。


点击链接,立刻了解 Authing!

Logo

Authing 是一款以开发者为中心的全场景身份云产品,集成了所有主流身份认证协议,为企业和开发者提供完善安全的用户认证和访问管理服务

更多推荐