【问题标题】:AngularJS vs ReactJS [closed]AngularJS vs ReactJS [关闭]
【发布时间】:2015-01-26 13:31:43
【问题描述】:

我正在决定为我的新 Web 应用程序使用哪个 JavaScript 框架。 我想使用 Angular,但最近听说了 React。 问题是 - 我还没有找到两者之间的一个很好的比较。 大多数进行比较的文章都是“pro-react”,并且没有太大帮助比较,而只是说明为什么 react 更好。 例如

https://www.codementor.io/reactjs/tutorial/react-vs-angularjs http://www.quora.com/Pete-Hunt/Posts/Facebooks-React-vs-AngularJS-A-Closer-Look

任何真实的经验,或说明两者优缺点的比较? 感谢您的意见

更新 - 也许一个小例子会有所帮助,如何在两个框架中做同样的事情并比较优缺点

示例:我在表格中有公司列表。每行是 1 家公司,每列是关于公司的一些信息(姓名、地址、员工人数..)有很多条目,我需要做一些分页和排序(服务器端)

【问题讨论】:

标签: javascript angularjs compare reactjs


【解决方案1】:

我对 React 有相当的经验,而对 Angular 基本上没有。所以我要说的关于 Angular 的内容来自我从其他人那里阅读和听到的内容。

反应

优点

  1. 简单易学
  2. 隔离组件更易于维护
  3. React 的“始终重新渲染”方式非常适合在事情变得复杂时更容易理解
  4. Flux 是 MVC 模式的一个非常好的替代方案。单向数据流有助于可维护性并保持数据和 DOM 元素的一致性。结合 Immutable.JS 数据结构,简直是锦上添花:)

缺点

  1. 不适合 DOM 操作库(例如:jQuery)
  2. 它确实改变了您做事的方式,尤其是在您使用 Flux 时,这很好,但需要一点时间来适应。
  3. 我发现当组件在渲染方法上处理大型数据集时,每次重新渲染都会减慢应用程序的速度。在这些情况下优化性能可能会有点棘手。

角度

优点

  1. 良好的文档
  2. 社区成员很有帮助(在 SO 上很容易找到好的答案)。
  3. 双向数据绑定让一些事情非常容易实现

缺点

  1. 性能问题:要进行双向数据绑定,它必须检查数据模型中的更改。它还必须解析您的 HTML 以使其成为神奇的工作。这会减慢速度,而且,如果应用在移动设备上运行,它会更快耗尽电池
  2. 跨 HTML 和 JS 传播的逻辑:代码更难理解、维护和调试。
  3. v2 即将修复一些问题,但所有 v1 代码都已过时

【讨论】:

  • 很好的答案,我已经使用 React 和 Angular 大约一年了,我想补充一点,永远不会选择 Angular 而不是 React,但是如果你随机带几个没有 React 经验的开发人员,需要马上开始工作,React 需要太长时间才能学会实用。此外,Ember 是 Angular 的更好版本……据我所知。在空闲时间学习 React,并将其用于下一个项目或贵公司的一些内部工具。
  • 是的,最好自学,然后从小事开始。
  • Separtaion HTML 和 JS 让代码更难理解维护和调试?牛屎。实际上,分离是一种“不要将 html 与 js 混合”的好习惯——它也使项目非常清晰易懂。 Model-View-Controler - html angular 模板是视图,js angular 组件是控制器,还有 angular 有模型部分(模型+服务)
猜你喜欢
  • 1970-01-01
  • 2023-03-16
  • 1970-01-01
  • 1970-01-01
  • 2018-05-23
  • 1970-01-01
  • 2015-03-12
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多