Visi komponentai

MotionHeight

Aukštis, sekantis turinį: sutraukimas, išskleidimas ir turinio pokyčiai.

ŽiniatinklisReact NativeTurinys ir dydis

Išbandykite

Ruošiamas pavyzdys…

Trumpiausias naudojimas

Details.jsx
<button onClick={() => setOpen(!open)}>Details</button>
<MotionHeight open={open}>
  <Answer />
</MotionHeight>

Ką jis sutvarko už jus

  • Animuoja iki tikrojo turinio aukščio, kurį išmatuoja už jus.
  • Seka turinį, kai jis atidarytas auga ar mažėja.
  • Prasideda nuo aukščio ekrane, net pakeitimo viduryje.
  • Keičiant puslapio dydį iškart prisitaiko, užuot atsilikęs nuo naujo pločio.
  • Uždarytas turinys lieka prijungtas, bet paslėptas ir neaktyvus, todėl jo būsena išlieka.

Naudokite jį

  • Atsakymai FAQ.
  • Atsiveriančių nustatymų grupė.
  • Sąrašas, kurio bendras aukštis turėtų būti animuojamas (apgaubkite MotionList).

Props

PropTipasNumatytojiAprašymas
openbooleantruefalse sutraukia iki nulinio aukščio; turinys lieka prijungtas, bet paslėptas ir neaktyvus.
childrenReactNodeTurinys.
aselement'div'Atvaizduojamas elementas.
transitionTransitionspringTiming kreivė { duration, easing } arba spyruoklė { tempo: 'spring', spring }. Pertrauktos spyruoklės išlaiko inerciją.
onMotionComplete(open) => voidVykdomas su open, kai aukštis nusistovi.

Kiti props perduodami atvaizduojamam elementui, todėl className, style ir įvykių apdorojimo funkcijos veikia kaip įprastai.

Žiniatinklis ir React Native

Žiniatinklyje aukštis grojamas per Web Animations API, o turinys išlaiko įprastą išdėstymą.

React Native vaizdas apkerpa turinį ir animuoja aukštį su JS driver, nes aukštis yra išdėstymas.

Naudojama šiuose pavyzdžiuose

Paieška

Rašykite, kad ieškotumėte dokumentacijoje.