Alle Komponenten
MotionHeight
Höhe, die ihrem Inhalt folgt: Ein- und Ausklappen sowie Inhaltsänderungen.
WebReact NativeInhalt und Größe
Ausprobieren
Beispiel wird vorbereitet…
Kürzeste Nutzung
Details.jsx<button onClick={() => setOpen(!open)}>Details</button>
<MotionHeight open={open}>
<Answer />
</MotionHeight>
Was sie dir abnimmt
- Animiert auf die echte Höhe des Inhalts, für dich gemessen.
- Folgt dem Inhalt, wenn er im geöffneten Zustand wächst oder schrumpft.
- Startet bei der Höhe auf dem Bildschirm, auch mitten in einer Änderung.
- Beim Ändern der Seitengröße passt es sich sofort an, statt der neuen Breite hinterherzulaufen.
- Geschlossener Inhalt bleibt gemountet, aber versteckt und inaktiv, sodass sein State erhalten bleibt.
Gut für
- Antworten in einer FAQ.
- Eine Gruppe von Einstellungen, die sich öffnet.
- Eine Liste, deren Gesamthöhe animiert werden soll (umschließe
MotionList).
props
| Prop | Typ | Standard | Beschreibung |
|---|
open | boolean | true | false klappt auf Höhe null ein; der Inhalt bleibt gemountet, aber versteckt und inaktiv. |
|---|
children | ReactNode | | Der Inhalt. |
|---|
as | element | 'div' | Das zu rendernde Element. |
|---|
transition | Transition | spring | Eine Timing-Kurve { duration, easing } oder eine Feder { tempo: 'spring', spring }. Federn behalten bei Unterbrechung ihren Schwung. |
|---|
onMotionComplete | (open) => void | | Läuft mit open, sobald die Höhe zur Ruhe gekommen ist. |
|---|
Weitere props gehen an das gerenderte Element, also funktionieren className, style und Event-Handler wie gewohnt.
Verwendet in diesen Beispielen