API-referencia

A @kkwaenggwari/animated-chorus minden exportja a props-aival, típusaival és alapértékeivel. Ugyanazok a nevek működnek weben és React Native alatt.

17 API

Számok és szöveg

MotionNumber

Szám, amelynek helyiértékei kerékként pörögnek.

PropTípusAlapértékLeírás
valuenumber | bigint | string—kötelezőA szám, vagy a hívó által formázott numerikus szöveg.
mode'replace' | 'roll''replace'A replace minden megváltozott helyiértéket egy lépéssel mozgat; a roll végigmegy a köztes számjegyeken.
direction'auto' | 'digit' | 'up' | 'down''auto'Az auto a nagyságrend változását követi, így az átvitelek egy irányba pörögnek; a digit minden helyiértéket külön hasonlít össze.
staggernumber45Ezredmásodperc a megváltozott helyiértékek között, az egyesektől kifelé. A teljes hullám korlátozott.
format(value) => string | Intl.NumberFormatOptionsA megjelenítendő szöveget visszaadó függvény, vagy Intl.NumberFormat beállítások (intl mellett).
intlbooleanfalseA beépített Intl.NumberFormat használata. Alapértelmezés szerint ki van kapcsolva, így egyetlen futtatókörnyezetnek sincs szüksége Intl-re.
localestring | string[]Területi beállítás az intl számára.
prefixstringSzöveg a szám előtt.
suffixstringSzöveg a szám után.
transitionTransitionspringTiming-görbe { duration, easing } vagy rugó { tempo: 'spring', spring }. A rugók megszakításkor megtartják a lendületüket.
onMotionComplete(value) => voidAz értékkel fut le, amikor a helyiértékek megálltak.
Komponensoldal és munkapad

MotionText

Változáskor animálódó szöveg: a numerikus szöveg helyiértékenként pörög, a többi szöveg cserélődik.

PropTípusAlapértékLeírás
childrenReactNodeA megjelenítendő szöveg.
aselement'span'A renderelendő elem.
transitionTransitionspringTiming-görbe { duration, easing } vagy rugó { tempo: 'spring', spring }. A rugók megszakításkor megtartják a lendületüket.
onMotionComplete(text) => voidAkkor fut le, amikor a mozgás megáll.
Komponensoldal és munkapad

MotionStream

Egyenletes ütemben megjelenített folyamatos szöveg, amely utoléri a löketeket.

PropTípusAlapértékLeírás
textstring—kötelezőAz eddigi szöveg. A növekvő szöveg egyenletes ütemben jelenik meg; az újraírás a közös kezdettől folytatódik.
speednumber90Az alap megjelenítési ütem karakter per másodpercben.
catchUpnumber900A lemaradás gyorsítással körülbelül ennyi ezredmásodperc alatt jelenik meg.
initialbooleanfalseA csatoláskor meglévő szöveget is fokozatosan jelenítse meg (különben azonnal látszik).
effect'fade' | 'none''fade'A fade beúsztatja az új karaktereket; a none közvetlenül megjeleníti őket.
children(visible: string) => ReactNodeAz ütemezett szöveget kapó függvény, például Markdown rendereléséhez.
aselement'span'A renderelendő elem.
onMotionComplete(text) => voidAkkor fut le, amikor a megjelenítés utoléri a text értéket.
Komponensoldal és munkapad

Tartalom és méret

MotionSwap

Áttűnéssel cserélődő tartalom, miközben az elem átméreteződik.

PropTípusAlapértékLeírás
valueunknownA tartalom identitása; új érték cserét indít. A sima szöveges gyermekek saját maguk identitása.
childrenReactNodeA tartalom.
aselement'span'A renderelendő elem.
inlinebooleanas === 'span'A true a tartalomhoz méretez (címkék, ikonok); a false kitölti a szülő szélességét, és a magasságot animálja.
align'start' | 'center' | 'end''center'Hol van a tartalom, amíg a méret változik.
effect'fade' | 'up' | 'down' | 'scale''fade'Hogyan lép be és ki a tartalom: az up felemelkedik, a down lesüllyed, a scale megnő.
transitionTransitionspringTiming-görbe { duration, easing } vagy rugó { tempo: 'spring', spring }. A rugók megszakításkor megtartják a lendületüket.
onMotionComplete(value) => voidAkkor fut le, amikor a mozgás megáll.
Komponensoldal és munkapad

MotionHeight

A magasságot a tartalomhoz animálja: összecsukás, kinyitás és tartalomváltozás.

PropTípusAlapértékLeírás
openbooleantrueA false nulla magasságra csuk össze; a tartalom csatolva marad, de rejtett és inaktív.
childrenReactNodeA tartalom.
aselement'div'A renderelendő elem.
transitionTransitionspringTiming-görbe { duration, easing } vagy rugó { tempo: 'spring', spring }. A rugók megszakításkor megtartják a lendületüket.
onMotionComplete(open) => voidAz open értékkel fut le, amikor a magasság megállt.
Komponensoldal és munkapad

MotionPresence

Csatolva tartja a tartalmat, miközben be- és kianimálódik.

PropTípusAlapértékLeírás
presentboolean—kötelezőA tartalom megjelenítése vagy elrejtése. Leválasztás helyett ezt módosítsa.
enterPose{ opacity: 1, translateY: 0 }A nyugalmi póz.
exitPose{ opacity: 0, translateY: -12 }A póz, amellyel a tartalom távozik, és ahonnan belép.
aselement'div'A renderelendő elem.
transitionTransitionspringTiming-görbe { duration, easing } vagy rugó { tempo: 'spring', spring }. A rugók megszakításkor megtartják a lendületüket.
onExitComplete() => voidAzután fut le, hogy a tartalom távozott és eltávolították.
Komponensoldal és munkapad

Kiválasztás és lapozás

MotionHighlight

Elemek adatokból, egyetlen kiemeléssel, amely a kijelölt elemhez vándorol.

PropTípusAlapértékLeírás
itemsreadonly T[]—kötelezőAz Ön adattömbje.
valuekey | null—kötelezőA kiemelt elem key-e; a null elrejti a kiemelést.
onValueChange(key, item) => voidElem megnyomásakor a key-jel és az elemmel fut le.
getKey(item) => string | numberitem.idEgyedi, stabil key-t ad vissza egy elemhez. Alapértelmezés item.id, illetve karakterláncoknál és számoknál maga az elem.
renderItem(item, { selected, index }) => ReactNodeitem.labelMegrajzol egy elemet; megkapja, hogy ki van-e jelölve.
hoverbooleanfalseKöveti a mutatót az elemek felett, és kilépéskor visszatér a value értékhez (web).
itemAselement'button'Az egyes listaelemek eleme.
itemClassNamestringOsztály minden listaelemhez; az itemStyle az inline stílusát állítja be.
highlightClassNamestringOsztály a kiemeléshez; a highlightStyle az inline stílusát állítja be.
transitionTransitionspringTiming-görbe { duration, easing } vagy rugó { tempo: 'spring', spring }. A rugók megszakításkor megtartják a lendületüket.
Komponensoldal és munkapad

MotionPager

Lapozható oldalak adatokból.

PropTípusAlapértékLeírás
itemsreadonly T[]—kötelezőAz Ön adattömbje.
indexnumberA megjelenített oldal. Hagyja el, hogy a lapozó maga kezelje.
defaultIndexnumber0Kezdőoldal, ha az index nem vezérelt.
onIndexChange(index, item) => voidAz indexszel és az elemmel fut le, amint egy csúsztatás, billentyű vagy görgetőkerék-gesztus megáll.
getKey(item) => string | numberitem.idEgyedi, stabil key-t ad vissza egy elemhez. Alapértelmezés item.id, illetve karakterláncoknál és számoknál maga az elem.
renderItem(item, { index, active }) => ReactNodeitem.labelMegrajzol egy oldalt; megkapja az indexét, és hogy aktív-e.
gapnumber0Távolság az oldalak között pixelben.
itemClassNamestringOsztály minden listaelemhez; az itemStyle az inline stílusát állítja be.
transitionTransitionspringTiming-görbe { duration, easing } vagy rugó { tempo: 'spring', spring }. A rugók megszakításkor megtartják a lendületüket.
Komponensoldal és munkapad

Listák

MotionList

Key-ekkel ellátott lista adatokból, amely csak a változást animálja.

PropTípusAlapértékLeírás
itemsreadonly T[]—kötelezőAz Ön adattömbje.
getKey(item) => string | numberitem.idEgyedi, stabil key-t ad vissza egy elemhez. Alapértelmezés item.id, illetve karakterláncoknál és számoknál maga az elem.
renderItem(item, index) => ReactNodeitem.labelMegrajzol egy elemet.
aselement'div'A renderelendő elem.
itemAselement'li' | 'div'Az egyes listaelemek eleme.
itemClassNamestringOsztály minden listaelemhez; az itemStyle az inline stílusát állítja be.
effect'rise' | 'fade' | 'scale' | 'slide''rise'Hogyan lépnek be és ki az elemek.
distancenumber16A rise és a slide útja pixelben.
staggernumber40Ezredmásodperc a belépő elemek között.
order'forward' | 'reverse''forward'A lépcsőzés iránya.
presentbooleantrueA false az elrendezés megtartásával minden elemet kianimál; a true visszahozza őket.
initialbooleantrueA belépés lejátszása a lista csatolásakor.
playKeystring | numberMódosítása újrajátssza a belépést.
transitionTransitionspringÁtmenet a belépő és kilépő elemekhez.
layoutTransitionTransitionspringÁtmenet az új helyükre sikló elemekhez.
Komponensoldal és munkapad

MotionReorder

Lista vagy rács átrendezése húzással, billentyűzetes mozgatással.

PropTípusAlapértékLeírás
itemsreadonly T[]Az elemek, ha Ön vezérli a sorrendet.
defaultItemsreadonly T[][]Kezdeti elemek, ha a komponens tartja a sorrendet.
onItemsChange(items, { reason, key }) => voidAz új sorrenddel fut le, és megadja, hogy húzásból, elengedésből vagy billentyűzetről jött-e.
getKey(item) => string | numberitemEgyedi key-t ad vissza egy elemhez. Alapértelmezés szerint maga az elem.
renderItem(item, { index, dragging }) => ReactNodeitem.labelMegrajzol egy elemet; megkapja az indexét, és hogy éppen húzzák-e.
reorder'live' | 'drop''live'A live húzás közben mozgatja a többi elemet; a drop megvárja az elengedést.
layout'list' | 'grid''grid'list vagy grid.
columnsnumber3Oszlopok egy rácsban.
gapnumber12Távolság az elemek között pixelben.
disabledbooleanfalseKikapcsolja a húzást.
durationnumber260Ezredmásodperc a félreálló elemekhez.
itemClassNamestringOsztály minden listaelemhez; az itemStyle az inline stílusát állítja be.
Komponensoldal és munkapad

Gesztusok

MotionSwipe

Sor, amely vízszintes csúsztatásra műveleteket fed fel, és elcsúsztatható.

PropTípusAlapértékLeírás
childrenReactNodeA sor tartalma.
startActionsReactNodeA sor elején jelennek meg, ha a sort a vége felé húzzák.
endActionsReactNodeA sor végén jelennek meg, ha a sort az eleje felé húzzák.
dismiss'start' | 'end' | 'both'Azok az oldalak, ahol egy hosszú csúsztatás vagy dobás eltávolítja a sort.
onDismiss(side) => voidAzután fut le, hogy a sor kicsúszott és összecsukódott; itt távolítsa el az elemet az adataiból.
onOpenChange(side | null) => voidA nyitott oldallal fut le, vagy null értékkel, amikor a sor bezárul.
disabledbooleanfalseKikapcsolja a csúsztatást.
contentClassNamestringOsztály a sor tartalmához; a contentStyle az inline stílusát állítja be.
transitionTransitionspringTiming-görbe { duration, easing } vagy rugó { tempo: 'spring', spring }. A rugók megszakításkor megtartják a lendületüket.
Komponensoldal és munkapad

MotionHold

Tartsa lenyomva a megerősítéshez; a korai elengedés visszatekeri.

PropTípusAlapértékLeírás
childrenReactNodeA gomb címkéje.
onConfirm() => voidAkkor fut le, amikor a lenyomva tartás teljesül.
durationnumber1200Ezredmásodperc, ameddig a nyomást tartani kell.
disabledbooleanfalseKikapcsolja a gombot.
fillClassNamestringOsztály a növekvő kitöltéshez; a fillStyle az inline stílusát állítja be.
Komponensoldal és munkapad

Rétegek

MotionSheet

Alsó sheet, felső sheet vagy oldalsó fiók megállási pontokkal.

PropTípusAlapértékLeírás
openbooleanfalseMegjelenik-e a sheet.
onOpenChange(open) => voidfalse értékkel fut le, amikor a sheetet húzással, koppintással vagy Escape-pel bezárják.
detents(number | 'content')[]['content']Nyugalmi méretek: a képernyő hányada, pixel vagy 'content'.
detentnumberVezérelt megállásipont-index.
defaultDetentnumber0A detent nélküli nyitáskor használt megállásipont-index.
onDetentChange(index) => voidAnnak a megállási pontnak az indexével fut le, amelyen a sheet megáll.
side'bottom' | 'top' | 'start' | 'end''bottom'Az él, ahonnan a sheet érkezik.
modalbooleantrueHátteret ad hozzá, bent tartja a fókuszt, és inaktívvá teszi az oldalt.
dismissiblebooleantrueA legkisebb megállási ponton túli húzás, a háttér és az Escape bezárja.
backdropClassNamestringOsztály a háttérhez; a backdropStyle az inline stílusát állítja be.
transitionTransitionspringTiming-görbe { duration, easing } vagy rugó { tempo: 'spring', spring }. A rugók megszakításkor megtartják a lendületüket.
Komponensoldal és munkapad

MotionZoom

Kép, amely a helyéről addig nagyít, amíg kitölti a képernyőt.

PropTípusAlapértékLeírás
srcstringA helyben megjelenített kép.
zoomSrcstringNagyobb kép, amely betöltés után jelenik meg; tartsa meg ugyanazt a képarányt.
marginnumber24A nagyított kép körül hagyott hely pixelben.
disabledbooleanfalseKikapcsolja a nagyítást.
onZoomChange(zoomed) => voidNagyításkor true, bezáráskor false értékkel fut le.
backdropStyleCSSPropertiesA háttér inline stílusa.
transitionTransitionspringTiming-görbe { duration, easing } vagy rugó { tempo: 'spring', spring }. A rugók megszakításkor megtartják a lendületüket.
Komponensoldal és munkapad

Haladás

ProgressBar

Vezérelt folyamatjelző vonal határozatlan állapottal.

PropTípusAlapértékLeírás
valuenumber | nullHaladás 0 és max között; a null határozatlan.
maxnumber100A befejezést jelentő érték.
colorstring'currentColor'A kitöltés színe.
trackColorstring'#e7ece9'A sáv színe.
thicknessnumber8A vonal vastagsága pixelben.
direction'ltr' | 'rtl''ltr'Kitöltés balról (ltr) vagy jobbról (rtl).
transitionTransitionspringTiming-görbe { duration, easing } vagy rugó { tempo: 'spring', spring }. A rugók megszakításkor megtartják a lendületüket.
Komponensoldal és munkapad

ProgressRing

Vezérelt folyamatjelző gyűrű határozatlan állapottal.

PropTípusAlapértékLeírás
valuenumber | nullHaladás 0 és max között; a null határozatlan.
maxnumber100A befejezést jelentő érték.
sizenumber96Átmérő pixelben.
thicknessnumber8A gyűrű vastagsága pixelben.
colorstring'currentColor'Az ív színe.
trackColorstring'#e7ece9'A sáv színe.
childrenReactNodeKözépen megjelenített címke.
transitionTransitionspringTiming-görbe { duration, easing } vagy rugó { tempo: 'spring', spring }. A rugók megszakításkor megtartják a lendületüket.
Komponensoldal és munkapad

Átmenetek

motionTokens

Kész értékek bármely transition prophoz.

PropTípusAlapértékLeírás
duration{ instant, fast, normal, slow }0 · 140 · 280 · 520Időtartamok ezredmásodpercben.
easing{ ease, easeOut, expoOut, backOut }TransitionTiming-átmenetek időtartammal és elnevezett görbével.
spring{ quick, basic, gentle, bouncy }TransitionRugós átmenetek, a gyors és feszestől a lágy és pattogósig.
Átmenetek
App.jsx
// Web and React Native: the same import.
import { MotionNumber, MotionList } from '@kkwaenggwari/animated-chorus';

export function Score({ points, players }) {
  return (
    <>
      <MotionNumber value={points} />
      <MotionList items={players} renderItem={(player) => player.name} />
    </>
  );
}

Keresés

Gépeljen a dokumentációban való kereséshez.