现在web开发最火的两个框架,react和vue。听起来就感觉很牛逼的样子。确实,不得不服,创造出这2种框架的人真的是牛逼。不过更牛逼的是为这2中框架不断完善的人。一个优秀的idea,会在很短的时间内被孵化、不断完善,这就是互联网的魅力。
好了,闲话不多说,我们进入正题。如果想看结论的,直接点击 这里 吆!
在讨论这两个框架之前,先和广大朋友们说清楚。本博客不掺杂太多的主观色彩,完全从个人工作中的使用情况和大家谈着2中框架。
先简略交代一下我对这两个框架的接触过程(可以直接跳过)
因为以前都是 angularjs 开发,所以,我第一个接触的是 vue 。数据绑定等众多相似之处,让我下意识的就选择了他。但是很可惜,那会网上资料不多,而且还是1.0版本,再加上工作中没有项目需要,我只是研究过一段时间的文档,并没有具体的项目开发。os:遗憾
后来,因为工作的需要,直接接触 react 做公司的OA系统。刚接触的时候,说实话, react 的 语法让你很难受,开发起来报错频繁,所以上手颇难,但是熟悉之后发现,react开发真的是好用,而且他的社区超级庞大,各种优秀的团队开发了很多现成的东西,为你的开发节省了大量时间。这里吐槽一下,80%的程序猿用代码,只有20%的程序猿在创造代码。不过这也是无奈之举,毕竟,作为一名员工第一职责是快、准、好的完成工作。os:没有面包,怎么谈理想。
不过,还是强烈建议大家,有时间,多在网上交流,分享一下自己的想法。互联网之所以强大,程序猿之所以工资高。离不开大家的分享的。都闭门造车,迟早会完蛋的。无论你水平高低,精心准备的东西,总会对别人产生帮助。
说多了,我们继续!自打用了react之后,博主就一种用,但是只是局限于中后台的管理系统。后来因为工作需要做手机页面的单页webapp,博主实现做了不少调查。发现手机端的单页应用还是 vue 比较好。原因有很多。咱们慢慢聊:
(1)我发现 vue2.0 特别厉害,react能做的,他都能做,功能上没什么差别,以前的许多bug都已经修改过了。os: 官方很强大啊,社区也厉害
(2)vue 文档超级详细,真的是小白入门宝典。直接度给你100年功力的那种,很详细。
(3)vue 的 动画过度效果很好。文档详细,效果牛逼,还能很方便的引入插件。
(4)vue 上手简单,真的很简单,很大程度上依赖于开发者对 HTML变成的习惯,以及 对 angularjs 的熟悉。贴别是数据绑定。
再就是数据驱动的理念好理解,开发者只需要关注数据,其他工作都是vue帮你完成了,所以感觉简单。
(5)vue 小巧、轻便。vue生产环境的压缩包很小20多KB,脚手架可定制,对项目开发哈市很友好的。
总之,看到他有那么多有点之后,我就用了,因为世界代码是一家,我有react的开发经验,学习vue可以说是很轻松,他们的思想。实现方式很多地方都是共同的。
三、vue、react 与 项目框架选择
再次声明,以下观点,纯属个人感受,不代表任何官方意见
我以工作中的体会,来和大家分享着2个框架的选择
1. vue 适合 webapp,适合做用户交互多、各种动态效果变化丰富的应用。特别是PC、手机的网页版 商城等页面。
原因: vue 实现逻辑复杂的功能比较简单,跟写js似的,而且一些效果、过度感觉很舒服。社区这部分资源也比较多、
2. react 适合 oa系统,适合 大批量的数据展示、适合做大型应用。特别适合公司的后台操作系统。
原因: react 对那种比较复杂的交互,实施起来比较麻烦,没有vue那么方便。再就是他的渲染原理是渲染整个组件树(除非你做详细设置),所以,一方面费性能,而且代码写起来,逻辑很复杂。但是react对批量数据操作很厉害
3. 涉及到混合开发,我个人觉得看情况。纯H5的混合, 用 reactNative ;如果50%左右那种,vue+react都可以,具体情况分析吧;10%那种,啥也别用了,直接html+js接入页面。
总结: