Closed gaearon closed 8 years ago
What an awesome governance! What is Internal Facebook Infra? Is it a team @facebook?
Just "internal Facebook infrastructure", by which we mean that we're looking at trying JavaScript styles on the facebook.com website itself (or other Facebook-owned websites which use the same stack). Not a separate team. :)
I must be picking up the jargon :anguished: . Will try to explain FB-specific terms better!
ReactTransitionGroup is really complicated
Is this because animation is inherently complicated to deal with, or is it something that shouldn't be too hard to simplify but no one's yet had the time?
ReactTransitionGroup is also not as robust as I think it should be.
It's missing the ability to
enter
transition won't start its leave
animation until the enter
animation finishes, and vice versa. This creates a poor experience for page transitions and carousels where the transition group might update frequently from the user rapidly clicking somethingI've tried my hand at adding those in but that added 100+ more lines of code and a dependency on Promises :(
It would be nice if those features were added (or roadmapped) into the official addon if there is to be a big rewrite (especially the interruptibility)
@cheapsteak
I think there are a couple of things that make TransitionGroup complicated:
I hope this gives you an idea of the challenges with TransitionGroup. There is definitely not going to be a roadmap, or a big rewrite for it. As we say in the notes, we don’t use it, so we should just hand it over to someone who does. They can increment the version number and then work with the community to make it better. At this point I would expect breaking changes but that’s the point: if you’re satisfied by what we have right now, just stay on that version or create your own fork.
Some thoughts on ReactTransitionGroup:
ReactTransitionGroup has the same problem as Promises; it has an underlying state machine and people always find needs for new states and transitions. Instead of trying to design a ReactTransitionGroup state machine that handles all cases, I'd suggest designing a newer ReactTransitionGroup around an arbitrary state machine.
Libraries/APIs worth mentioning: https://github.com/aasm/aasm, https://github.com/machty/ember-concurrency, and https://github.com/yelouafi/redux-saga.
A future "ReactTransitionGroup" could then be a tiny css class layer constructed via conventions from a state machine.
How about a dedicated section where all the FB-specific / React-specific terms are explained? Could be an "add more terms as you go" approach, where terms get added once people ask about it.
How about a dedicated section where all the FB-specific / React-specific terms are explained?
We could do it if it’s a repeated problem.
Just wanted to say I love this repo. I love how open you guys are with the governance of this project.