Comments (8)
Wrapping the code inside of collapse with Suspense also fixes the issue (lazy, i guess). But you don't get the very first transition, instead its pop ups. The issue seems to be caused by lazy.
from material-ui.
Lazy loading is also likely another reason why this issue is occuring. But for my project it's necessary otherwise, I'd get these prompts
@tajbowness are you receiving these errors for all components or only those coming from @mui/material
? I'd recommend looking for the root cause.
I've been testing a bit and this is the summary is:
- The issue happens with the combination of
lazy
(withoutSuspense
) +unmounOnExit
. - Wrapping lazy-loaded components with
Suspense
makes the issue disappear but the initial transition is lost. unmountOnExit
with regularly loaded components works fine.- The error is thrown in the
Transition
component from thereact-transition-group
, whichCollapse
uses under the hood. Unclear what causes it.
I'd always recommend wrapping lazy-loaded components in Suspense
, especially the ones displayed after user interaction. See this example adapted from the React docs.
I think we should focus on a more realistic scenario like this one I adapted from your demo: playground. Collapse
wraps a lazy-loaded component wrapped in Suspense
. The problem in this case is that the transition doesn't work when the component is lazy-loaded for the first time.
@siriwatknp @DiegoAndai do you remember similar issues with Material UI transition components?
from material-ui.
Related Issues (20)
- [docs] Confusion around package managers HOT 6
- [docs-infra] Implement debounce to reduce number of requests sent to Algolia during search HOT 7
- Upgrading from `6.0.0-alpha.7` to `6.0.0-alpha.8` breaks styles of TextField HOT 1
- [material-ui][Autocomplete] Slow performance with `renderOption` having Checkbox
- (material-ui@next) MUI InputLabel shrink state is bugged HOT 2
- [docs-infra] Overflow in API view on mobile HOT 1
- Responsive App bar with Drawer not working as intended? HOT 2
- [material-ui] How to properly merge themes that are using styleOverrides functions? HOT 2
- [RFC]
- [material-ui][Table] How to insert a row after a row and before a row on current page HOT 2
- [material-ui][Autocomplete] `openOnFocus` prop doesn't work when used with `limitTags`
- [material-ui] Questions regarding Pigment CSS usage HOT 3
- [icons] Support getting Icon Components as Arrays, by styles and tags HOT 2
- [material-ui][docs] Bug with keyboard navigation in Select HOT 11
- [core] Remove enzyme
- [material-ui] Not able assign React query fetched data to nested array HOT 2
- [mui-material][mui-system] Drop support for Safari < 14
- [docs] Release docs with latest version HOT 2
- [material-ui] Prop className did not match with Next.js HOT 3
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 material-ui.