MotionHold
Maintenez appuyé pour confirmer une action destructive ; relâcher trop tôt fait revenir en arrière.
WebReact NativeGestes
Essayer
Préparation de l’exemple…
Usage minimal
<MotionHold duration={1200} onConfirm={deleteProject}>
Hold to delete
</MotionHold>;Ce qu’il gère pour vous
- Le remplissage progresse tant que le pointeur, Espace ou Entrée est maintenu.
- Relâcher trop tôt fait reculer le remplissage, et appuyer de nouveau pendant le recul repart du remplissage actuel.
- Le bouton s’enfonce pendant l’appui et rebondit une fois à la confirmation.
À utiliser pour
- Supprimer un projet.
- Maintenir pour payer.
- Réinitialiser les réglages.
Props
| Prop | Type | Défaut | Description |
|---|---|---|---|
children | ReactNode | Le libellé du bouton. | |
onConfirm | () => void | S’exécute une fois l’appui maintenu terminé. | |
duration | number | 1200 | Millisecondes pendant lesquelles l’appui doit être maintenu. |
disabled | boolean | false | Désactive le bouton. |
fillClassName | string | Classe du remplissage qui progresse ; fillStyle définit son style en ligne. |
Les autres props vont à l’élément rendu : className, style et les gestionnaires d’événements fonctionnent comme d’habitude.
Web et React Native
Stylez le remplissage avec fillClassName ou fillStyle ; les autres props vont au button.
Sur React Native, l’action d’activation d’accessibilité confirme directement, car maintenir appuyé est difficile avec les technologies d’assistance.