以后,三大支流前端框架别离是Vue、React、Angular这三个框架。

Vue
是一个构建数据驱动的Web界面的库,精确来说不是一个框架,用于构建直观,疾速和组件化交互式界面的 MVVM 框架。
它有以下的个性:1.轻量级的框架、2.双向数据绑定、3.指令、4.插件化
长处:

  1. 简略:官网文档很清晰,比 Angular 简略易学。
  2. 疾速:异步批处理形式更新 DOM。
  3. 组合:用解耦的、可复用的组件组合你的应用程序。
  4. 对第三方敌对:在引入第三方js时很不便。

毛病:我想说的,Vue.js 十分棒,像任何其它框架/库一样,自身简直没有什么毛病。我还是在上面列出我所晓得的 Vue.js 为数不多的几个毛病:
1、主代码为尤雨溪集体所写,社区小待成熟;2、不反对IE8;3、相比于其它两个框架,影响度不大,丰富性不够。

REACT
React 起源于 Facebook 的外部我的项目,用来架设 Instagram 的网站, 并于 2013年 5 月开源。React 领有较高的性能,代码逻辑非常简单,越来越多的人已开始关注和应用它。它有以下的个性:

1.申明式设计:React采纳申明范式,能够轻松形容利用。
2.高效:React通过对DOM的模仿,最大限度地缩小与DOM的交互。
3.灵便:React能够与已知的库或框架很好地配合。

长处:

  1. 速度快:在UI渲染过程中,React通过在虚构DOM中的微操作来实现对理论DOM的部分更新。
  2. 跨浏览器兼容:虚构DOM帮忙咱们解决了跨浏览器问题,它为咱们提供了标准化的API,甚至在IE8中都是没问题的。
  3. 模块化:为你程序编写独立的模块化UI组件,这样当某个或某些组件呈现问题是,能够不便地进行隔离。
  4. 单向数据流:Flux是一个用于在JavaScript利用中创立单向数据层的架构,它随着React视图库的开发而被Facebook概念化。
  5. 同构、纯正的javascript:因为搜索引擎的爬虫程序依赖的是服务端响应而不是JavaScript的执行,预渲染你的利用有助于搜索引擎优化。
    6.兼容性好:比方应用RequireJS来加载和打包,而Browserify和Webpack实用于构建大型利用。它们使得那些艰巨的工作不再让人望而却步。

毛病:
React自身只是一个V而已,并不是一个残缺的框架,所以如果是大型项目想要一套残缺的框架的话,根本都须要加上ReactRouter和Flux能力写大型利用。

Angular
Angular是一款优良的前端JS框架,曾经被用于Google的多款产品当中。
它有以下的个性:1.良好的应用程序构造、2.双向数据绑定、3.指令、4.HTML模板、5.可嵌入、注入和测试
长处:

  1. 模板功能强大丰盛,自带了极其丰富的angular指令。
  2. 是一个比较完善的前端框架,蕴含服务,模板,数据双向绑定,模块化,路由,过滤器,依赖注入等所有性能;
  3. 自定义指令,自定义指令后能够在我的项目中屡次应用。
  4. ng模块化比拟大胆的引入了Java的一些货色(依赖注入),可能很容易的写出可复用的代码,对于麻利开发的团队来说十分有帮忙。
  5. angularjs是互联网伟人谷歌开发,这也意味着他有一个松软的根底和社区反对。

毛病:

  1. angular 入门很容易 但深刻后概念很多, 学习中较难了解.
  2. 文档例子非常少, 官网的文档根本只写了api, 一个例子都没有, 很多时候具体怎么用都是google来的, 或间接问misko,angular的作者.
  3. 对IE6/7 兼容不算特地好, 就是能够用jQuery本人手写代码解决一些.
  4. 指令的利用的最佳实际教程少, angular其实很灵便, 如果不看一些作者的应用准则,很容易写出 四不像的代码, 例如js中还是像jQuery的思维有很多dom操作.
  5. DI 依赖注入 如果代码压缩须要显示申明.

从我集体来讲,VUE因为学习成本低,很适宜小企业或者学校实验室的我的项目开发,而react是最灵便的,用户的可控性更强些,angular是基于TypeScript的,所以在援用第三方插件时不如VUE不便,在日常抉择框架时:

如果您比其余性能更喜爱灵活性,请应用React。
如果您喜爱在TypeScript中编码,请抉择Angular。
如果您是JavaScript爱好者,请应用React,因为它齐全与JavaScript无关。
如果您喜爱洁净的代码,请在您的应用程序中应用Vue。
Vue提供最简略的学习曲线,是初学者的现实抉择。
如果要在应用程序中拆散关注点,请应用Vue。
如果您喜爱面向对象的编程,Angular相对是您的抉择。
Vue非常适合小型团队和小型我的项目。如果您的应用程序仿佛很大并且具备重要的将来扩大打算,请抉择React或Angular。