React对比Angular的优势在哪

关于Angular的一些不足之处:

1,过于依赖DOM操作,Angular在执行的过程中会先扫描所有的DOM,然后通过指令来编译。这会造成一个结果,就是很难去

判断程序的执行顺序导致很难进行调试。

2,双向数据绑定也会带来性能问题,Angular的实现方法被叫做“Dirty-checking(脏检查机制)”,也就是通过跟踪数据的改变再

动态更新UI界面。所以意味着在Angular的作用域中任何操作的执行都会引发Dirty-checking,随着绑定数量增加性能就会越低。

3,Angular的任何操作会引起digest cycle对注册过的监听器的遍历,以实现组件动态地同步数据。这会和其它的依赖产生兼容性问题。如果你使用的其它JavaScript库也需要改变数据就必须用Angular的$apply函数去封装。或者如果它是一个工具库,你就需要把它转换成一个服务。似乎其它JavaScript库都必须经过改动才能和Angular进行交互操作。

React的优势:

1,“虚拟DOM”,React并不直接对DOM进行操作,在页面渲染的过程中,React通过在虚拟DOM中的微操作来实现对实际DOM的局部更新。

2,单向数据流,Flux一个用于在JavaScript应用中创建单向数据层的架构,它只是一个概念,而非特定工具的实现。它可以被其它框架吸纳。例如,Alex Rattray有一个很好的Flux实例,在React中使用了Backbone的集合和模型。

3,模块化,可以编写独立的UI组件,并且可以复用,每个组件都可以进行独立的开发和测试,提高了代码的可维护性。

相关文章

react 中的高阶组件主要是对于 hooks 之前的类组件来说的,如...
我们上一节了解了组件的更新机制,但是只是停留在表层上,例...
我们上一节了解了 react 的虚拟 dom 的格式,如何把虚拟 dom...
react 本身提供了克隆组件的方法,但是平时开发中可能很少使...
mobx 是一个简单可扩展的状态管理库,中文官网链接。小编在接...
我们在平常的开发中不可避免的会有很多列表渲染逻辑,在 pc ...