Усі компоненти
MotionSwipe
Рядок із діями, що відкриваються свайпом, і необов’язковим видаленням свайпом.
ВебReact NativeЖести
Спробуйте
Найкоротше використання
Row.jsx<MotionSwipe
endActions={<button onClick={() => archive(id)}>Archive</button>}
dismiss="end"
onDismiss={() => remove(id)}
>
<MessagePreview />
</MotionSwipe>;
Що він бере на себе
- Рядок іде за горизонтальним перетягуванням, чинить опір за межами дій і зупиняється з урахуванням швидкості відпускання.
- З
dismiss довгий свайп чи кидок виводить рядок, згортає його висоту й потім викликає onDismiss(side). - Вертикальне прокручування далі працює, і відкритим лишається лише один рядок.
- Дотик до відкритого рядка закриває його, а фокус клавіатури на дії відкриває його.
Для чого підходить
- Архівувати чи видалити у вхідних.
- Закріпити розмову.
- Прибрати елемент зі списку.
Props
| Проп | Тип | Типово | Опис |
|---|
children | ReactNode | | Вміст рядка. |
|---|
startActions | ReactNode | | З’являються на початку рядка під час перетягування до кінця. |
|---|
endActions | ReactNode | | З’являються в кінці рядка під час перетягування до початку. |
|---|
dismiss | 'start' | 'end' | 'both' | | Боки, де довгий свайп чи кидок видаляє рядок. |
|---|
onDismiss | (side) => void | | Виконується після того, як рядок виїхав і згорнувся; видаліть елемент зі своїх даних тут. |
|---|
onOpenChange | (side | null) => void | | Виконується з відкритим боком або null, коли рядок закривається. |
|---|
disabled | boolean | false | Вимикає свайп. |
|---|
contentClassName | string | | Клас для вмісту рядка; contentStyle задає його вбудований стиль. |
|---|
transition | Transition | spring | Крива timing { duration, easing } чи пружина { tempo: 'spring', spring }. Після переривання пружини зберігають інерцію. |
|---|
Решта props передається відрендереному елементу, тож className, style і обробники подій працюють як завжди.
Використовується в прикладах