Alle componenten
MotionHeight
Hoogte die de inhoud volgt: inklappen, uitklappen en inhoudswijzigingen.
WebReact NativeInhoud en grootte
Probeer het
Kortste gebruik
Details.jsx<button onClick={() => setOpen(!open)}>Details</button>
<MotionHeight open={open}>
<Answer />
</MotionHeight>
Wat het voor je regelt
- Animeert naar de echte hoogte van de inhoud, voor je gemeten.
- Volgt de inhoud als die groeit of krimpt terwijl hij open is.
- Begint bij de hoogte op het scherm, zelfs midden in een wijziging.
- Het formaat van de pagina wijzigen klikt direct mee in plaats van achter de nieuwe breedte aan te lopen.
- Dichte inhoud blijft gemount maar verborgen en inert, dus de state blijft behouden.
Gebruik het voor
- Antwoorden in een FAQ.
- Een groep instellingen die opengaat.
- Een lijst waarvan de totale hoogte moet animeren (wikkel
MotionList).
Props
| Prop | Type | Standaard | Beschrijving |
|---|
open | boolean | true | false klapt in tot hoogte nul; de inhoud blijft gemount maar verborgen en inert. |
|---|
children | ReactNode | | De inhoud. |
|---|
as | element | 'div' | Het element dat wordt gerenderd. |
|---|
transition | Transition | spring | Een timingcurve { duration, easing } of een veer { tempo: 'spring', spring }. Veren behouden hun momentum als ze worden onderbroken. |
|---|
onMotionComplete | (open) => void | | Draait met open zodra de hoogte tot rust is gekomen. |
|---|
Andere props gaan naar het gerenderde element, dus className, style en event handlers werken zoals gewoonlijk.
Gebruikt in deze voorbeelden