Alle komponenter
MotionHeight
Høyde som følger innholdet: lukke, åpne og innholdsendringer.
WebReact NativeInnhold og størrelse
Prøv det
Korteste bruk
Details.jsx<button onClick={() => setOpen(!open)}>Details</button>
<MotionHeight open={open}>
<Answer />
</MotionHeight>
Dette tar den seg av
- Animerer til innholdets faktiske høyde, målt for deg.
- Følger innholdet når det vokser eller krymper mens det er åpent.
- Starter fra høyden på skjermen, selv midt i en endring.
- Når siden endrer størrelse, tilpasses høyden med en gang i stedet for å henge etter den nye bredden.
- Lukket innhold forblir montert, men skjult og inert, så state-en beholdes.
Bruk den til
- Svar i en FAQ.
- En gruppe innstillinger som åpnes.
- En liste der totalhøyden skal animeres (pakk inn
MotionList).
Props
| Prop | Type | Standard | Beskrivelse |
|---|
open | boolean | true | false lukker til null høyde; innholdet forblir montert, men skjult og inert. |
|---|
children | ReactNode | | Innholdet. |
|---|
as | element | 'div' | Elementet som renderes. |
|---|
transition | Transition | spring | En timingkurve { duration, easing } eller en fjær { tempo: 'spring', spring }. Fjærer beholder momentet når de avbrytes. |
|---|
onMotionComplete | (open) => void | | Kjører med open når høyden har landet. |
|---|
Andre props går til det renderte elementet, så className, style og hendelseshåndterere fungerer som vanlig.