使用全部新的库和框架,很难跟上全部这些库和框架,也就是说,这就须要您决定哪些是值得花时间的。javascript
让咱们看看人们说什么:前端
“和Vue.JS一块儿工做是很愉快的,我发现学习曲线很浅,然而,这纯粹是基于个人经验,如前所述,我过去曾和一些人一块儿工做过。vue
默认的模板结构工做原理和Angular很是相似,因此有这个背景的开发人员可能会React上手更快。若是React像Vue.js那么容易学习的话,我真的不会不学习React,它的影响很大。java
“比起React我更喜欢vue.js。在JavaScript领域vue.js是镇上新来的小子。因此我想说学习的简单性多是第一。简洁是设计的基础。react
Vue是简单的,它具备不少从Angular1和react来的概念。你可使用它来创建任何系统 - 只是把它包含到HTML文件中。git
React更大,更复杂一点(例如在设置方面)。angularjs
因此若是你想只想学一个框架,而且没有一个已经创建的系统那就选择Vue。vue.js很平易近人,提供如何把各类事情作好的更多的结构。若是你还不肯定,二者都试试。也能够点击这里来阅读,ReactJS vs Vue.js vs AngularJS:编程
https://www.agriya.com/blog/2017/03/08/angularjs-vs-vue-js/bootstrap
“回答你的问题,我认为Vue.js是了解React系统的一个好方法。然而,你看完指南以前你可能会爱上Vue.js。让我告诉你,整件内容都值得一读。找个星期六开始试试吧!后端
在你读个人回答,我很是鼓励你看看Vue的框架比较。它很是体贴,涉及许多重要的考虑因素。
您想用哪个平台开发?选择你本身的毒药吧。
React是几乎全部平台的理想选择。不管是Web仍是原生开发,React都已经覆盖并在两个方向都成熟了。在UI开发方面,在任何上下文中都是一个灵活的开发人员。它甚至进入了虚拟现实。
Vue 2太走向原生。Evan和他的团队正在与阿里巴巴合做创造Weex,这将容许本地渲染就像React Natvie。Vue 2如今主要集中在Web开发,但也承诺支持其余平台。根据Evan的最新的Vue的博客,2017对Weex是重要的一年。
你想多久才开始开发呢?为何不今天就开始,而要等几个星期?
React有陡峭的学习曲线。它的文件和术语在某些概念是不一样寻常,而凌乱,在Vue中指南,属性名称,安装过程,等一切感受很熟悉,与更普遍的HTML,CSS和ES6标准一致。感谢这两个框架,他们的社区欣欣向荣。你能够找到大量的资源来启动。
我面临的最大障碍是理解构建工具链:Webpack,JSX,个人文本编辑器插件等等。
然而,Vue不须要Webpack,或任何其余事情。你能够立刻经过ES5快速的写应用包括使用你最喜好的软件包管理器或CDN的框架。这意味着你能够用CodePen和其余代码共享的环境。
React最近推出了create-React-app。你能够将这个和Vue的命令行工具进行对比。
在专业领域…
Vue一直有大牌公司像gitlab,Laravel,PageKit等采用。
Vue仍然感受像在个人开发周期上新的孩子。然而,许多开发商在我公司(IHS Markit)已经开始采用Vue,在考虑Angular和React过重。
React很受欢迎,并且已经持续好久了。可能更多的企业使用了React。若是你如今找一份新工做,那就记住这一点。
在过去的几个月里(降低2016),我看过不少文章说:“为何咱们选择vue.js超过React和Angular…”。vue.js得到牵引力,快捷,愈来愈多的人意识到它是多么容易使用。
再来看看Vue迷…
包括状态管理和路由!你已经知道了关于Flux/Redux,这就是Vue所提供的:
Vuex是Vue的 Flux/Redux/Elm-inspired的实现,专门针对使用Vue的响应系统。其系统的mutations, getters,actions很是协调,与您的组件集成很容易。不过,若是你更喜欢用Redux,Vue用Revue也是很酷的。不管哪一种方式,知道如何使用状态管理系统是一种颇有价值的模式。
若是你须要URL路径和参数Vue-Router是该死的简单而强大。只要检查一下文档就ok了。
其余值得注意的事情…
Vue的文档是一个梦。我不能告诉足够多的人它的指南和API参考有多大。Evan You(做者和项目负责人)有一种将现代开发提供给门外汉的方式。即便是经验丰富的开发人员,这也是使人耳目一新的。
写单文件vue组件感受很天然 - 我历来没有回头,由于。这不须要Webpack,但没有恐惧,Vue提供了一个很是方便的命令行工具来帮助你产生很小的安装骨干项目。若是你喜欢Browserify,也不用担忧。炼狱,你能够写你本身的CLI模板,若是你想要的话!提供的模板很是灵活。
Vue 2支持服务器端渲染,帮你作SEO,让你的网站能够呈现给禁用javascript的人。
最后,不断有什么给我印象深入的东西,再次回来的Vue.js是其突出的社区,Evan和他的贡献很专业,它的易用性,其显而易见的对齐与Web部件标准。我被这个项目的成功所震惊,创造出几乎任何我能梦想获得的前端都是多么使人愉快的事情。
我也来这儿。
我花了大约一年的时间来处理这个问题。我最近换了Vue在过去的几个月里,我没有回头。关于Vue的一些事情让我沉迷过分了,即:
JSX - 我讨厌JSX。它老是花费我几秒钟的时间,若是不是几分钟就万幸了。我每次打开项目要接受这个事实,我一直在寻找一个JavaScript组件包括风格、传统的JavaScript方法和UI元素都支持的一个模块化的野兽。它很快就老化了。
重命名传统HTML属性 - 传统HTML类和风格的元素属性。哦,React也能作到,你所要作的就是确保你全部的类的属性称为类名和样式属性没有字符串值了。想象一下,试图建立一个基于购买的现有主题的网站。把它换成React就像用刀子刺眼球同样。而对Vue,现有的HTML只是普通的工做。你想“reactify”吗?继续,但这不是React中所要求的。
打包须要 - 因此React就只是UI层吗?他们是正确的;你甚至也能够不须要WebPack或任何其余的打包机。可是若是没有它们,你能够尝试建造任何实质性的东西,你都会很难过的。你开始拉动左右,使功能和全部那些假定WebPack包。若是你只是写“hello world”,而后只使用React能够。别的,你就得开始阅读全部的打包内容。
“我用Angular1一年多一点,而后切换到React。我已经看了Vue几回却历来没有创建任何东西,那就是说我什么也没听到,但伟大的事情,从外观上来看,它是很容易。
我准备采起行动,缘由有3:
这是目前最流行的:这很重要,最受欢迎的是它拥有最多的在线资源,更好的工做机会,更有可能得到长期的成功(除非他们使用谷歌的Angular1)。
它是通用的:有库容许您使用React来编写移动甚至桌面应用程序(尽管我尚未亲自尝试构建桌面应用程序)。Vue也将推出本身的混合移动框架,但即便当它来到的时候,我严重怀疑它会遇上React,有多少人考虑重头开始考虑到RN有及其社区的规模。
这很复杂,很难学:我不一样意大多数人的观点,说这个不是学习React的好理由,并且其实是我喜欢React的缘由之一。学习React会让你成为更好的JavaScript开发人员。React很难,由于:
它使用了不少中间高级JS概念。像一个深刻了解的对象,“this”关键词和一些功能的编程概念是必要的工做,React的效率(最后一个是更相关的若是你使用Redux)。它也将更可能迫使你学习ES6若是你还不知道。
你须要的工具只有1件套,因此你必须依靠终极版的其余库。开始时这可能很痛苦,但它教你如何混合、匹配和链接不一样的库。也让你可以定制你的工具,你认为合适或甚至将React放进Angular/Vue应用若是你只想用它在你的应用程序的某些部分的优点。
它一般用到构建工具像WebPack(虽然它实际上并不须要他们)。Vue是创建更加容易没有编译工具,可是至关多的任何真实世界的应用都将是最终使用编译工具,不管如何,这是惟一的一个优点,若是你还在学习,只是想跳过麻烦去更快建设。即便是这样的话,你仍然能够经过使用项目生成器,好比建立React应用程序来跳过全部配置并直接构建。
前端开发的问题是js生态系统可能很是不稳定,框架在不断变化。所以,我认为,不是寻找最简单、最强大、最流行的框架,而是做为一个开发人员长期学习有用的东西(尽管React也有最流行的东西),这可能更有用。即便React最终变得过期,我也不会对学习它感到后悔,由于当我开始学习JavaScript的时候,我知道的比我想知道的还要多。
“这些天我不多作网页,大多工做在后端数据处理、网络I/O和分布式通讯。
一年多一点之前,我想要的是一个实时的Web UI想象一些我对服务器端的数据,我想用SignalR。我回到了一些流行的框架,有一个很是简单的思惟方式:“我能够阅读‘入门’,而后在15分钟内开始一些基本的工做吗?”。
我最终选择了Vue,主要是由于它使用简单的对象模型和我真的只是过去的东西我能够从SignalR直接进入并显示。我所尝试的几乎全部其余的东西围绕着数据都有某种类型的打包器/代理,这意味着你必须运行一些映射才可使模型正常工做。我几乎决定用Mithril,可是当我发现这只是个人须要与Vue重合更多。其实我真的想用React,但Vue只是更平易近人,我不须要花费额外的时间学习React。
然而,真正的考验是几个月后,我去修改和添加更多的功能到个人简单调试UI中。我几乎能够当即拿起它,甚至作了至关大的改动。
与个人经历相比,Ember。咱们有一个大的应用程序基于Ember编写,每一次我试图作的是我认为应该是一个简单的改变(不接触的几个月后),我花了比我想象的要长5倍,我花了大部分的时间与它做战以前实现我忘了5个的地方,你必须修改参考额外的依赖或其它一些一样平凡但真气人的细节。
你能够学习Vue在分钟的基础知识,并在几个小时内很内行。这是否是不少的框架,能够说,这是一个被严重低估的好处。
这篇文章最初发表在bootstrapbay博客 - https://bootstrapbay.com/blog/vuejs-vs-reactjs/
各位,大家怎么看?在这场辩论中,请随意点儿,别忘了分享你的体验,这样其余人就能了解到你的想法。
汇智网(www.hubwiz.com,大量最新的vue/react/angular课程),小智翻译。