Всички компоненти
MotionPager
Страници от данни с плъзгане: въвеждане, въртележки и панели с раздели.
УебReact NativeИзбор и страници
Опитайте
Най-кратка употреба
Onboarding.jsx<MotionPager
items={slides}
index={page}
onIndexChange={setPage}
gap={16}
renderItem={(slide) => <Slide slide={slide} />}
/>;
С какво се справя вместо вас
- Страниците следват плъзгания и влачене с мишка, оказват съпротивление отвъд краищата и спират според скоростта на пускане.
- Бързо махване винаги обръща страница, а един жест никога не обръща повече от една.
- Хоризонталното превъртане с тъчпад също обръща страници, а инерционната му опашка се игнорира.
- Стрелките, Home и End работят, когато пейджърът е на фокус, а вертикалното превъртане продължава да работи.
- Страниците, различни от активната, са неактивни.
Подходящ за
- Процес на въвеждане.
- Въртележка със снимки.
- Панели с раздели с плъзгане в комбинация с
MotionHighlight.
Props
| Prop | Тип | По подразбиране | Описание |
|---|
items | readonly T[] | —задължително | Вашият масив с данни. |
|---|
index | number | | Показаната страница. Пропуснете я, за да остави пейджърът да управлява своята. |
|---|
defaultIndex | number | 0 | Начална страница, когато index не е контролиран. |
|---|
onIndexChange | (index, item) => void | | Изпълнява се с индекса и елемента веднага щом плъзгане, клавиш или жест с колелцето спре. |
|---|
getKey | (item) => string | number | item.id | Връща уникален стабилен ключ за елемент. По подразбиране item.id, а за низове и числа — самия елемент. |
|---|
renderItem | (item, { index, active }) => ReactNode | item.label | Рисува страница; получава индекса ѝ и дали е активна. |
|---|
gap | number | 0 | Разстояние между страниците в пиксели. |
|---|
itemClassName | string | | Клас за елемента на всяка позиция; itemStyle задава вградения му стил. |
|---|
transition | Transition | spring | Крива на timing { duration, easing } или пружина { tempo: 'spring', spring }. Пружините запазват инерцията си при прекъсване. |
|---|
Другите props отиват към рендерирания елемент, така че className, style и обработчиците на събития работят както обикновено.