我正在使用React TransitionGroup来动画化(淡入/淡出)可被过滤(即由用户删除或添加回去)的一张纸牌div。
输入的动画效果非常好,但是当删除元素并应用淡出效果时,该动画非常混乱。我可以在开发工具中看到如何从DOM中删除一堆节点-远远超出了300ms超时参数。实际上,即使将超时属性和CSS动画大幅减少到1ms仍然会产生此问题。
如果我完全删除TransitionGroup,或者将“ exit”属性设置为false,则不会出现这些退出问题。
以下是重要的代码:
<div className="column col-9 col-md-12 col-reviews bg-gray">
<TransitionGroup>
{filteredReviews.map((review) => (
<CSSTransition
key={review.reviewDate}
timeout={300}
classNames="fade"
>
<ReviewBox review={review} />
</CSSTransition>
))}
</TransitionGroup>
</div>
CSS与他们的example page完全相同,这里不再赘述,因为我很确定它没有任何关系。
有任何提示吗?