Visi komponentai

MotionList

Sąrašas iš duomenų, animuojantis tik tai, kas pasikeitė.

ŽiniatinklisReact NativeSąrašai

Išbandykite

Ruošiamas pavyzdys…

Trumpiausias naudojimas

Todos.jsx
<MotionList as="ul" items={todos} renderItem={(todo) => <TodoRow todo={todo} />} />;

Ką jis sutvarko už jus

  • Nauji elementai įeina ribota kaskada, o nepaliesti lieka vietoje.
  • Pašalinti elementai palieka srautą ir animuojami išeidami savo vietoje, o likusieji įslenka į tarpą.
  • Pertvarkyti elementai nuslysta į naujas vietas.
  • Kito pakeitimo pertraukti judesiai išlaiko greitį.
  • present={false} animuoja visų elementų išėjimą, o playKey iš naujo groja įėjimą.

Naudokite jį

  • Užduočių sąrašas.
  • Filtruoti paieškos rezultatai.
  • Pirkinių krepšelis.

Props

PropTipasNumatytojiAprašymas
itemsreadonly T[]—privalomaJūsų duomenų masyvas.
getKey(item) => string | numberitem.idGrąžina unikalų, stabilų elemento key. Pagal numatymą item.id arba pats elementas eilutėms ir skaičiams.
renderItem(item, index) => ReactNodeitem.labelNupiešia elementą.
aselement'div'Atvaizduojamas elementas.
itemAselement'li' | 'div'Kiekvieno elemento apvalkalas.
itemClassNamestringKlasė kiekvienam elementui; itemStyle nustato jo vidinį stilių.
effect'rise' | 'fade' | 'scale' | 'slide''rise'Kaip elementai įeina ir išeina.
distancenumber16rise ir slide atstumas pikseliais.
staggernumber40Milisekundės tarp įeinančių elementų.
order'forward' | 'reverse''forward'Kaskados kryptis.
presentbooleantruefalse animuoja visų elementų išėjimą išlaikydamas išdėstymą; true juos grąžina.
initialbooleantrueGroti įėjimą, kai sąrašas prijungiamas.
playKeystring | numberJį pakeitus įėjimas grojamas iš naujo.
transitionTransitionspringPerėjimas įeinantiems ir išeinantiems elementams.
layoutTransitionTransitionspringPerėjimas elementams, slystantiems į naujas vietas.

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

Žiniatinklis ir React Native

Kiekvienas elementas gauna apgaubiantį elementą (li viduje ul ar ol, kitaip div; itemAs tai keičia), kurio stilius nustatomas su itemClassName.

key turi būti unikalūs. Apgaubkite sąrašą MotionHeight, kad būtų animuojamas ir jo bendras aukštis.

Naudojama šiuose pavyzdžiuose

Paieška

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