MotionHold
Нажмите и удерживайте, чтобы подтвердить разрушительное действие; раннее отпускание откатывает назад.
ВебReact NativeЖесты
Попробуйте
Подготовка примера…
Кратчайшее использование
<MotionHold duration={1200} onConfirm={deleteProject}>
Hold to delete
</MotionHold>;Что он берёт на себя
- Заливка растёт, пока удерживаются указатель, пробел или Enter.
- Раннее отпускание откатывает заливку, а повторное нажатие во время отката продолжает с текущей заливки.
- Кнопка вдавливается при удержании и один раз «щёлкает» при подтверждении.
Для чего подходит
- Удалить проект.
- Удерживайте, чтобы оплатить.
- Сбросить настройки.
Props
| Проп | Тип | По умолчанию | Описание |
|---|---|---|---|
children | ReactNode | Подпись кнопки. | |
onConfirm | () => void | Выполняется, когда удержание завершено. | |
duration | number | 1200 | Сколько миллисекунд нужно удерживать нажатие. |
disabled | boolean | false | Отключает кнопку. |
fillClassName | string | Класс для растущей заливки; fillStyle задаёт её встроенный стиль. |
Остальные props передаются отрендеренному элементу, поэтому className, style и обработчики событий работают как обычно.
Веб и React Native
Стилизуйте заливку через fillClassName или fillStyle; остальные props передаются button.
В React Native действие активации доступности подтверждает сразу, потому что удерживать трудно с ассистивными технологиями.