Всички компоненти

MotionPager

Страници от данни с плъзгане: въвеждане, въртележки и панели с раздели.

УебReact NativeИзбор и страници

Опитайте

Подготовка на примера…

Най-кратка употреба

Onboarding.jsx
<MotionPager
  items={slides}
  index={page}
  onIndexChange={setPage}
  gap={16}
  renderItem={(slide) => <Slide slide={slide} />}
/>;

С какво се справя вместо вас

  • Страниците следват плъзгания и влачене с мишка, оказват съпротивление отвъд краищата и спират според скоростта на пускане.
  • Бързо махване винаги обръща страница, а един жест никога не обръща повече от една.
  • Хоризонталното превъртане с тъчпад също обръща страници, а инерционната му опашка се игнорира.
  • Стрелките, Home и End работят, когато пейджърът е на фокус, а вертикалното превъртане продължава да работи.
  • Страниците, различни от активната, са неактивни.

Подходящ за

  • Процес на въвеждане.
  • Въртележка със снимки.
  • Панели с раздели с плъзгане в комбинация с MotionHighlight.

Props

PropТипПо подразбиранеОписание
itemsreadonly T[]—задължителноВашият масив с данни.
indexnumberПоказаната страница. Пропуснете я, за да остави пейджърът да управлява своята.
defaultIndexnumber0Начална страница, когато index не е контролиран.
onIndexChange(index, item) => voidИзпълнява се с индекса и елемента веднага щом плъзгане, клавиш или жест с колелцето спре.
getKey(item) => string | numberitem.idВръща уникален стабилен ключ за елемент. По подразбиране item.id, а за низове и числа — самия елемент.
renderItem(item, { index, active }) => ReactNodeitem.labelРисува страница; получава индекса ѝ и дали е активна.
gapnumber0Разстояние между страниците в пиксели.
itemClassNamestringКлас за елемента на всяка позиция; itemStyle задава вградения му стил.
transitionTransitionspringКрива на timing { duration, easing } или пружина { tempo: 'spring', spring }. Пружините запазват инерцията си при прекъсване.

Другите props отиват към рендерирания елемент, така че className, style и обработчиците на събития работят както обикновено.

Уеб и React Native

index може да е контролиран (onIndexChange(index, item) съобщава всяко спиране) или оставен на пейджъра с defaultIndex.

Същият компонент и същите props работят в React Native.

Използван в тези примери

Търсене

Пишете, за да търсите в документацията.