javascript - AngularJS 与 ReactJS

标签 javascript angularjs compare reactjs

<分区>

我正在决定为我的新网络应用程序使用哪个 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 个公司,每列是关于公司的一些信息(名称,地址,员 worker 数..)有很多条目,我需要做一些分页和排序(服务器端)

最佳答案

我对 React 有一定的经验,但对 Angular 基本没有经验。所以我要说的关于 Angular 的内容来自于我从其他人那里读到和听到的东西。

react

优点

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

缺点

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

Angular

优点

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

缺点

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

关于javascript - AngularJS 与 ReactJS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28151067/

相关文章:

angularjs非常简单是/否 bool 选择指令不绑定(bind)

javascript - 如何绑定(bind) google maps geocoder.geocode() 回调函数

javascript - 在 Javascript 中将 Uint8Array 转换为数组

angularjs - 如何使用基于另一个元素类的 AngularJS ng-Class 条件?

c++ - 如何在对象中使用 C++ 中的 "this"指针?

java - 在 Java 中比较/评估数字

swift - 比较 NSDate

javascript - 在 Django View 中传递列表或数组(作为参数)

javascript - 使用 Fetch API 递归返回分页输出

angularjs - 如何在angularjs onclick中订购项目