MotionHold
Apăsați lung pentru a confirma o acțiune distructivă; o eliberare prea devreme derulează înapoi.
WebReact NativeGesturi
Încercați
Se pregătește exemplul…
Cea mai scurtă utilizare
<MotionHold duration={1200} onConfirm={deleteProject}>
Hold to delete
</MotionHold>;Ce rezolvă în locul dumneavoastră
- Umplerea crește cât sunt apăsate cursorul, Space sau Enter.
- O eliberare prea devreme derulează umplerea înapoi, iar o nouă apăsare în timpul derulării continuă de la umplerea curentă.
- Butonul se adâncește cât e apăsat și sare o dată la confirmare.
Folosiți-o pentru
- Ștergerea unui proiect.
- Apăsați lung pentru a plăti.
- Resetarea setărilor.
Props
| Prop | Tip | Implicit | Descriere |
|---|---|---|---|
children | ReactNode | Eticheta butonului. | |
onConfirm | () => void | Rulează după ce apăsarea lungă se încheie. | |
duration | number | 1200 | Milisecundele cât trebuie ținută apăsarea. |
disabled | boolean | false | Dezactivează butonul. |
fillClassName | string | Clasă pentru umplerea care crește; fillStyle îi setează stilul inline. |
Celelalte props merg la elementul randat, așa că className, style și handlerele de evenimente funcționează ca de obicei.
Web și React Native
Stilizați umplerea cu fillClassName sau fillStyle; celelalte props merg la button.
În React Native, acțiunea de activare a accesibilității confirmă direct, pentru că apăsarea lungă e dificilă cu tehnologiile asistive.