搜索

首页  >  问答  >  正文

angular.js - 怎么看待NgReact(Use React Components in Angular)

刚刚看到http://davidchang.github.io/ngReact/
将Reactjs和Angularjs整合起来。使用Reactjs来实现Angularjs的指令部分,只负责渲染。
怎么看待这种组合?
有什么益处?弊端?

漂亮男人漂亮男人2776 天前739

全部回复(2)我来回复

  • 过去多啦不再A梦

    过去多啦不再A梦2017-05-15 16:52:29

    希望对这个都有了解的大神指点一二,多谢了。

    回复
    0
  • 我想大声告诉你

    我想大声告诉你2017-05-15 16:52:29

    我对react不了解,不过倒是可以尝试解释下:

    由于angular的自动脏检查机制,angular的渲染非常耗时,它的脏检查是将dom元素中的所有ngBind元素记录下来,然后在每次$digest循环时判断变化,做内容替换。这有一个问题就是如果页面中数据太多,操纵的DOM元素就越多,效率也就越低,因此angular有一个2000的ngRepeat上限。

    react由于没有模板,都是js做渲染,在内存中做运算,而不是直接操控dom,这会非常快,所以两者结合后在UI渲染上会有一个量级的提升,这对于大数量的数据呈现会有很大帮助。

    至于缺点,我不喜欢react算不? angular的模板是一个很大的优势,所见即所得,所有的都是指令,它依然是html;相反react将html写成component的方式我觉得优化和维护成本太高,es7开始会有Object.observe功能了,到时候ng的效率会有一个大的提升。

    我不了解的地方:两者结合之后,如何做DOM事件处理?如何继续做双向数据绑定?如果不需要双向数据绑定,其实angular从1.3开始内置了一次性绑定的语法:{{ ::expression }},这会很大缓解双向数据绑定效率低下问题,欢迎指正。

    回复
    0
  • 取消回复