美文网首页
Angular5 - Vue.js -ReactJS 的区别

Angular5 - Vue.js -ReactJS 的区别

作者: 秘果_li | 来源:发表于2019-01-04 22:18 被阅读0次

    参考https://blog.fundebug.com/2018/07/09/react_vs_angular_vue/

    Angular 5

    Angular是一个从2009年就开始推出JavaScript MVVM 框架

    优点

    • 新特性:RXJS(是一种针对异步数据流编程工具,或者叫响应式扩展编程;Angular引入RxJS为了就是让异步可控、更简单),Angular 5还可以快速编译(3秒内),有新的HttpClient;
    • 详细的文档几乎涵盖了所有必须的信息,便于学习;
    • 数据双向绑定,可以减少出错的风险;
    • MVVM(Model-View-ViewModel),View的变化会自动更新到 ViewModel,ViewModel的变化也会自动同步到View上显示(自动同步是因为ViewModel的属性中实现了Observer,当属性变更时能触发相应的操作)使得开发者可以针对同一个App模块同时开发;
    • 依赖注入使得模块化和模块中组件引入更加方便;

    缺点

    • 语法比较复杂;好在Angular 5使用TypeScript 2.4,已经简化了很多
    • 迁移问题:从低版本升级到新版本的时候,不兼容导致迁移成本高。

    适用情况

    由于Angular使用的是TypeScript,因此它更适合于单页Web应用,应用程序体积较大,而且有着未来的扩展计划的也适用Angular

    ReactJS

    ReactJS是一个Facebook在2013年开源的JavaScript库

    优点

    • 易于学习:由于语法十分简洁
    • 组件化程度高具有高度的灵活性;
    • 虚拟DOM将HTML,XHTML、或则XML的文档格式化成树形结构,这样浏览器可以更容易理解;
    • 结合ES6/7,React可以很容易写出各种酷炫代码;
    • Downward数据绑定,单向数据流,父节点的数据不会受到孩子节点的影响;
    • 100%的开源,每天都有来自全世界无数的开发者的更新和改进;
    • 绝对的轻量级,因为数据处理既可以在用户端,也可以在服务端;
    • 版本迁移非常容易,Facebook提供了”codemods”来自动化这一过程。

    缺点

    • 缺乏官方文档:ReactJS的快速开发使得文档的缺乏,众多开发者的维护也使其缺乏一个系统化的思路;
    • React因为太灵活增加了决策成本而不好使;
    • 需要很长的时间去掌握,因为ReactJS需要你对如何将UI和MVC框架整合有一个足够深度的理解。

    适用情况

    适用于对于灵活性要求胜过功能性项目,适合熟悉JavaScript的开发者,可以用来开发应用程序体积较大,而且有着未来的扩展计划的项目

    Vue.js

    Vue.js是一个2013年诞生的前端框架

    优点

    • 强化的HTML,有着很多和Angular相似的特点。
    • 有详细的文档
    • 可适用性:它和Angular以及React都有一定的相似性;
    • 非常棒的整合性:Vue.js可以同时用于单页面应用和更加复杂的网页应用。可以用它编写很小的可交互部件,可以很容易地整合到现有的项目中而不会影响到整个系统;
    • 可扩展性:Vue.js可以用于快速开发大型复用模板;
    • 体积小:Vue.js只有20KB左右的大小,使得其速度和灵活性相对于其它框架都好很多。
    • 代码整洁性好
    • Vue提供了最简单的学习曲线,因此它是初学者的理想选择

    缺点

    • 资源匮乏:Vue.js依然在整个市场中只占有很小的比例,所以相应的资源、知识要少很多;
    • 灵活性带来的风险:有时候,将其整合到大型项目的时候会有一些问题,但是你不见得能够找到解法;

    适用情况

    非常适合用于构架非常灵活的UI和复杂的单页面应用,适合小团队和小项目

    相关文章

      网友评论

          本文标题:Angular5 - Vue.js -ReactJS 的区别

          本文链接:https://www.haomeiwen.com/subject/lolkrqtx.html