Comments (3)
Version 2.0 is a complete rewrite and there is no concept of flexDuration
now. Animations are managed by d3-timer which has some really clever optimizations to handle thousands of concurrent interpolations efficiently. I would try updating your animations without staggering them first.
from react-move.
@sghall Thanks for the reply and great work on version 2 of this package, it's working really well and is a lot friendlier to use!
I am updating in the ballpark of around 150 elements at the same time and it didn't perform well at all. The animations started to get very jumpy. I had to manually stagger different elements and that seemed to work okay. Is there anything you guys expose from d3-timer that I can use to try out different timings?
How was flexDuration
handled in v1, and is it something that I can possibly handle in my app?
Thanks
from react-move.
Right on. Thanks!
Hmmm, I would say you are not going to get 150 elements to animate smoothly in React. It's just not going to do it...not with react-move or react-motion or any other lib. There's just too much overhead with the VDOM stuff. The timer will handle thousands of tweens but it has to call setState on each frame and React will just choke.
The React team toyed around with ideas to support animation for React 16, but looks like that got sidelined. If you want to get into some of the details on this take a look at this thread...
facebook/react#10703
Your idea of staggering is a good thought and I would look at strategies to group things together and animate the group. That's a common strategy in SVG.
Also, if you are not using the NodeGroup
I would definitely use that component over the Animate
component. It's much more robust for handling lots of items.
If you want to setup a codesandbox to demonstrate what you need to do, I can look at that.
from react-move.
Related Issues (20)
- Tree demo doesn't work with current reactjs HOT 1
- Can't get NodeGroup to update HOT 1
- Force update animation HOT 4
- Any plans for migrate React deprecated lifecycle methods HOT 5
- Carousel example inside documentation HOT 2
- Disable Animations HOT 2
- Problems with data display when using Animate HOT 7
- how to do nest animation like groupBar or stackBar HOT 2
- package-lock.json seems to be incorrect HOT 2
- A simpler interface for react-move HOT 12
- 'background' css style property expecting a number not a string HOT 2
- Using NodeGroup with function components with Hooks does not update HOT 1
- Animate components seem to be dependent on each other HOT 2
- Caching and events
- React-Native animations HOT 1
- How to render animations with multiple stages HOT 1
- Peer dependency issue with npm 7 HOT 3
- pause resume transition
- How to continue to move to next position HOT 1
- React 18 Compatability HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from react-move.