代码之家  ›  专栏  ›  技术社区  ›  Peter V. Mørch

TransitionGroup需要“forever”才能删除“many”组件

  •  0
  • Peter V. Mørch  · 技术社区  · 5 年前

    我在用 <TransitionGroup/> <CSSTransition timeout={2000}>... 所有的转换都要进行 2000ms 在CSS中。

    如果我添加然后删除少量条目,大约需要2000ms onExited()

    但是对于500个实体,转换组需要48秒(chrome)或486(!!!!)秒(firefox) 在移除500个元素后对最后一个元素调用。

    sandbox example 只是对 TransitionGroup example doc . 有一个按钮可以一次添加100个项目,还有一个“全部删除”按钮将打印到控制台,从开始删除到这两个操作所用的时间 onExiting

    这听起来像是一个虫子,但如果有什么我可以做不同的,那就太好了。

    0 回复  |  直到 5 年前
        1
  •  0
  •   Peter V. Mørch    5 年前

    使用TransitionGroup的方式没有任何问题。我创造了:

    TransitionGroup takes 486 seconds to remove 500 components · Issue #599 · reactjs/react-transition-group

    在这里,我还概述了为什么在代码中我认为会发生这种情况,以及对修复它的不完全尝试。