Všetky komponenty

MotionStream

Streamovaný text odhaľovaný stálym tempom, ktorý dobieha nárazy.

WebReact NativeČísla a text

Vyskúšajte

Príprava príkladu…

Najkratšie použitie

Answer.jsx
<MotionStream text={answerSoFar} initial />

<MotionStream text={answerSoFar}>
  {visible => <Markdown>{visible}</Markdown>}
</MotionStream>

Čo za vás vyrieši

  • Nárazy sa zmenia na čítanie: text sa odhaľuje rýchlosťou speed znakov za sekundu namiesto po kusoch.
  • Nahromadený text odhaľovanie zrýchli, aby sa zobrazil zhruba do catchUp milisekúnd.
  • Emoji, vlajky a kombinujúce znaky sa nikdy nerozdelia a napoly prijaté emoji počká na zvyšok.
  • Prepísaná odpoveď pokračuje od spoločného začiatku namiesto toho, aby začínala znova.
  • Odhalené znaky idú priamo do stránky; React renderuje len niekoľkokrát za sekundu.

Použite na

  • Odpoveď asistenta v chate.
  • Log zostavenia alebo nasadenia.
  • Živé titulky.

Props

PropTypPredvolenéPopis
textstring—povinnéDoterajší text. Rastúci text sa odhaľuje stálym tempom; prepis pokračuje od spoločného začiatku.
speednumber90Základná rýchlosť odhaľovania v znakoch za sekundu.
catchUpnumber900Nahromadený text sa zrýchlením odhalí približne za toľko milisekúnd.
initialbooleanfalseOdhaliť aj text, ktorý existuje pri pripojení (inak sa zobrazí hneď).
effect'fade' | 'none''fade'fade nové znaky plynulo zobrazí; none ich ukáže priamo.
children(visible: string) => ReactNodeFunkcia, ktorá dostáva text v danom tempe, napríklad na render Markdown.
aselement'span'Prvok, ktorý sa renderuje.
onMotionComplete(text) => voidSpustí sa zakaždým, keď odhaľovanie dobehne text.

Ostatné props idú do renderovaného prvku, takže className, style a obsluhy udalostí fungujú ako obvykle.

Web a React Native

Na webe sa nové znaky plynulo objavujú (effect="fade") a zlievajú do bežného označiteľného textu. Funkcia ako potomok dostáva reťazec v danom tempe pre Markdown, najviac v každej druhej snímke. V skrytej karte sa všetko zobrazí naraz.

V React Native je text skutočný Text a objavuje sa bez prelínania.

Použité v týchto príkladoch

Hľadať

Píšte a hľadajte v dokumentácii.