Задать вопрос
@vovashaplin

Как сделать плавное удаление элемента массива с framer-motion?

Сделал анимацию удаления из массива, но она работает некорректно. Показывает анимацию удаления именно последнего элемента.
Вот сделал простой макет, для удобства просмотра.
https://codesandbox.io/s/awesome-edison-75p4t?file...
Также хотелось бы реализовать плавное замещение удаленного элемента, а не просто безанимированный сдвиг.
  • Вопрос задан
  • 292 просмотра
Подписаться 1 Простой Комментировать
Решения вопроса 1
hzzzzl
@hzzzzl
вышло так, добавил таймаут в Box, чтобы успевало отанимироваться перед удалением
https://codesandbox.io/s/angry-payne-j0nhi

Показывает анимацию удаления именно последнего элемента

потому что здесь key=index смещался на один при удалении, был не "уникальным для блока", а зависел от позиции в массиве
{boxes.map((item, index) => (
  <Box key={index} item={item} onDelete={onDelete} />
 ))}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы