Я использую <TransitionGroup/>
и <CSSTransition timeout={2000}>...
, и для всех переходов установлено значение 2000ms
в CSS.
Если я добавлю, а затем удалю небольшое количество записей, это займет примерно 2000 мсек для onExited()
, который должен быть вызван, как и ожидалось.
Но при 500 энтирах TransitionGroup требуется 48 секунд (chrome) или 486 (!!!!) секунд (firefox) до onExited()
вызывается на последнем элементе после удаления 500 элементов.
Почему это так? Это делает его бесполезным для моего варианта использования.
Я создал пример песочницы , который является просто модификацией TransitionGroup из do c. Есть кнопка для добавления 100 элементов одновременно и кнопка «Удалить все», которая выводит на консоль информацию о том, сколько времени прошло с начала удаления до тех пор, пока на последнем элементе не будут вызваны onExiting
и onExited()
.
Это звучит для меня как ошибка, но если есть что-то, что я могу сделать по-другому, это было бы здорово.
Если это действительно ошибка, я думаю, я мог бы сделать это с чистым CSS, но сейчас я не знаю как ...