Visi komponentai

MotionHighlight

Skirtukai, segmentiniai valdikliai ar naršymas iš duomenų su vienu paryškinimu, keliaujančiu prie pasirinkimo.

ŽiniatinklisReact NativePasirinkimas ir puslapiavimas

Išbandykite

Ruošiamas pavyzdys…

Trumpiausias naudojimas

Tabs.jsx
<MotionHighlight
  items={['Overview', 'Activity', 'Settings']}
  value={tab}
  onValueChange={setTab}
  hover
/>;

Ką jis sutvarko už jus

  • Vienas paryškinimas juda ir keičia dydį tarp elementų; stilių jam nustatykite su highlightClassName.
  • Elementai ateina iš items, key – iš getKey, o etiketės – iš renderItem.
  • hover priverčia jį sekti žymeklį ir grįžti prie pasirinkimo.
  • Elementai gali išsidėstyti keliose eilutėse, ir paryškinimas juos seka.
  • Šriftų įkėlimas ir išdėstymo pokyčiai automatiškai išmatuojami iš naujo.

Naudokite jį

  • Puslapio skirtukai.
  • Filtrų juosta.
  • Segmentinis valdiklis nustatymų formoje.

Props

PropTipasNumatytojiAprašymas
itemsreadonly T[]—privalomaJūsų duomenų masyvas.
valuekey | null—privalomaParyškinto elemento key; null paslepia paryškinimą.
onValueChange(key, item) => voidVykdomas su key ir elementu, kai elementas paspaudžiamas.
getKey(item) => string | numberitem.idGrąžina unikalų, stabilų elemento key. Pagal numatymą item.id arba pats elementas eilutėms ir skaičiams.
renderItem(item, { selected, index }) => ReactNodeitem.labelNupiešia elementą; gauna, ar jis pasirinktas.
hoverbooleanfalseSeka žymeklį virš elementų ir išėjus grįžta prie value (žiniatinklis).
itemAselement'button'Kiekvieno elemento apvalkalas.
itemClassNamestringKlasė kiekvienam elementui; itemStyle nustato jo vidinį stilių.
highlightClassNamestringParyškinimo klasė; highlightStyle nustato jo vidinį stilių.
transitionTransitionspringTiming kreivė { duration, easing } arba spyruoklė { tempo: 'spring', spring }. Pertrauktos spyruoklės išlaiko inerciją.

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

Žiniatinklis ir React Native

Kiekvienas elementas pagal numatymą atvaizduojamas kaip button (itemAs tai keičia); jį paspaudus iškviečiama onValueChange(key, item).

React Native elementai yra Pressable; padėtis vykdoma su vietiniu driver, o dydis – įdėtame JavaScript valdomame vaizde.

Naudojama šiuose pavyzdžiuose

Paieška

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