Kaikki komponentit

MotionStream

Tasaisella tahdilla näytettävä virtaava teksti, joka saa purskeet kiinni.

WebReact NativeNumerot ja teksti

Kokeile

Valmistellaan esimerkkiä…

Lyhin käyttö

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

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

Mitä se hoitaa puolestasi

  • Purskeista tulee luettavaa: teksti näytetään speed merkin sekuntivauhdilla palasten sijaan.
  • Jäljessä oleminen nopeuttaa näyttämistä, jotta teksti näkyy noin catchUp millisekunnissa.
  • Emojit, liput ja yhdistävät merkit eivät koskaan hajoa, ja puoliksi saapunut emoji odottaa loppuosaa.
  • Uudelleen kirjoitettu vastaus jatkaa yhteisestä alusta sen sijaan, että aloittaisi alusta.
  • Näytetyt merkit menevät suoraan sivulle; React renderöi vain muutaman kerran sekunnissa.

Käytä sitä

  • Avustajan vastaus keskustelussa.
  • Koonti- tai julkaisuloki.
  • Live-tekstitykset.

Props

PropTyyppiOletusKuvaus
textstring—pakollinenTeksti tähän mennessä. Kasvava teksti näytetään tasaisella tahdilla; uudelleenkirjoitus jatkaa yhteisestä alusta.
speednumber90Perusnäyttönopeus merkkeinä sekunnissa.
catchUpnumber900Jäljessä oleva osa näytetään nopeuttamalla noin näin monessa millisekunnissa.
initialbooleanfalseNäytä asteittain myös kiinnityshetkellä olemassa oleva teksti (muuten se näkyy heti).
effect'fade' | 'none''fade'fade häivyttää uudet merkit esiin; none näyttää ne suoraan.
children(visible: string) => ReactNodeFunktio, joka saa tahdistetun tekstin, esimerkiksi Markdownin renderöimiseen.
aselement'span'Renderöitävä elementti.
onMotionComplete(text) => voidSuoritetaan aina, kun näyttäminen saavuttaa text-arvon.

Muut props-arvot menevät renderöidylle elementille, joten className, style ja tapahtumankäsittelijät toimivat tavalliseen tapaan.

Web ja React Native

Webissä uudet merkit häivytetään esiin (effect="fade") ja yhdistetään tavalliseksi, valittavaksi tekstiksi. Funktiolapsi saa tahdistetun merkkijonon Markdownia varten enintään joka toisessa ruudussa. Piilotetulla välilehdellä kaikki näytetään kerralla.

React Nativessa teksti on oikea Text ja ilmestyy ilman häivytystä.

Käytetty näissä esimerkeissä

Haku

Kirjoita hakeaksesi dokumentaatiosta.