pmndrs / react-spring

✌️ A spring physics based React animation library
http://www.react-spring.dev/
MIT License
27.73k stars 1.18k forks source link

[bug]: styles are not updated when using useSprings in conjunction with deleting items from a list #2248

Open DashaTratsevskaya opened 5 months ago

DashaTratsevskaya commented 5 months ago

Which react-spring target are you using?

What version of react-spring are you using?

^9.5.2

What's Wrong?

when deleting elements from an array, if you start with any other element instead of the first one and reach the first one, the styles of the component are not updated after deleting the first one. Here is a quick example https://codesandbox.io/p/sandbox/pensive-snow-h9lv38 ?file=%2Fsrc%2Findex.tsx%3A8%2C12

To Reproduce

  1. click delete => the first item will be active
  2. click delete again => there isn't active item, all items have display:none style

Expected Behaviour

on the second step I expect to see the next active element, after deleting the first element

Link to repo

https://codesandbox.io/p/sandbox/pensive-snow-h9lv38 ?file=%2Fsrc%2Findex.tsx%3A8%2C12

joshuaellis commented 5 months ago

For stuff like that IMO you'd probably want to use useTransition? Have you tried that? That hook is much better suited to what you're trying to do. I'm not sure this is a bug 🤔