Démarrage rapide de l'installation Pro :rocket:

Exemple de base

L'entrée toggle — parfois appelée "interrupteur" — offre un choix entre l'une des deux valeurs ; c'est une excellente option lorsque vous voulez que l'utilisateur active ou désactive une fonctionnalité :

Charger l'exemple en direct

Valeurs

Les valeurs pour la bascule sont undefined si non-interagi, true si cochée, et false si décochée. Vous pouvez changer ces valeurs en passant les props onValue et offValue. Dans cet exemple, nous allons définir onValue à la chaîne 'active' et offValue à la chaîne 'inactive' :

Charger l'exemple en direct

Étiquettes

Étiquette principale

Par défaut, l'entrée bascule prend en charge une étiquette principale comme la prop label sur toute autre entrée FormKit. L'étiquette principale est affichée à droite de la bascule à moins que vous n'utilisiez une Étiquette de valeur, qui la déplacera alors au-dessus de la bascule :

Charger l'exemple en direct

Position de l'étiquette alternative

Si vous souhaitez que l'étiquette soit affichée au-dessus de la bascule, vous pouvez utiliser la prop alt-label-position :

Charger l'exemple en direct

Étiquette de valeur

De plus, vous pouvez spécifier des étiquettes secondaires en définissant les props on-value-label et off-value-label. Ces valeurs sont affichées conditionnellement en fonction de l'état activé/désactivé de la bascule. Les étiquettes de valeur se rendent à droite de l'entrée bascule. L'"étiquette principale" sera déplacée à la position de l'étiquette alternative au-dessus de la bascule lorsque des étiquettes de valeur sont utilisées :

Charger l'exemple en direct

Étiquettes de valeur internes

De plus, vous pouvez définir la prop value-label-display à inner pour rendre les étiquettes de valeur à l'intérieur de la bascule. L'Étiquette principale reviendra à être affichée à droite de la bascule :

Charger l'exemple en direct

Icônes

La prop thumb-icon vous permet d'insérer une icône dans la section thumb de l'entrée toggle. Cette prop accepte une chaîne de caractères qui est passée au plugin d'icônes de FormKit :

Charger l'exemple en direct

Couleurs

L'entrée bascule prend en charge les propriétés de couleur pour ses différentes sections afin de faciliter le style. Chaque propriété contient des états activés et désactivés qui sont appliqués selon que la bascule est activée ou non. L'exemple suivant utilise certaines de ces propriétés de couleur. Voir la section Props & Attributs ci-dessous pour une liste complète de ces propriétés :

Charger l'exemple en direct

L'entrée toggle est construite sur la base de l'entrée de case à cocher native HTML.

Props & Attributs

PropTypePar défautDescription
alt-label-positionBooleanundefinedDéplace l'étiquette au-dessus de la bascule.
off-valueanyfalseLa valeur lorsque la bascule n'est pas cochée.
on-valueanytrueLa valeur lorsque la bascule est cochée.
off-value-labelStringundefinedLe texte de l'étiquette de valeur lorsque la bascule n'est pas cochée.
on-value-labelStringundefinedLe texte de l'étiquette de valeur lorsque la bascule est cochée.
value-label-displayStringundefinedLes étiquettes de valeur `on` et `off` seront toujours par défaut affichées à l'extérieur et à droite de la bascule. Les autres valeurs acceptées incluent `inner` pour définir les étiquettes de valeur à l'intérieur de la bascule, et `hidden` qui cache les étiquettes de valeur.
value-label-color-offStringundefinedUtilisé pour définir la couleur de l'étiquette de valeur lorsque la bascule n'est pas cochée.
value-label-color-onStringundefinedUtilisé pour définir la couleur de l'étiquette de valeur lorsque la bascule est cochée.
thumb-iconStringundefinedCette propriété est utilisée pour définir l'icône qui sera placée à l'intérieur de la section du pouce.
thumb-color-offStringundefinedDéfinit la couleur de fond de la section du pouce lorsque la bascule n'est pas cochée.
thumb-color-onStringundefinedDéfinit la couleur de fond de la section du pouce lorsque la bascule est cochée.
icon-color-offStringundefinedLa couleur que l'icône doit avoir lorsque la propriété `toggle-icon` est définie et que la bascule n'est pas cochée.
icon-color-onStringundefinedLa couleur que l'icône doit avoir lorsque la propriété `toggle-icon` est définie et que la bascule est cochée.
track-color-offStringundefinedDéfinit la couleur de fond de la section `track` lorsque la bascule n'est pas cochée.
track-color-onStringundefinedDéfinit la couleur de fond de la section `track` lorsque la bascule est cochée.
Afficher Universel props
configObject{}Options de configuration à fournir au nœud d'entrée et à tout nœud descendant de cette entrée.
delayNumber20Nombre de millisecondes à attendre avant que la valeur d'une entrée ne soit déclenchée avant que le commit hook ne soit déclenché.
dirtyBehaviorstringtouchedDétermine comment le drapeau "dirty" de cette entrée est défini. Peut être défini sur touched ou comparetouched (par défaut) est plus performant, mais ne détectera pas lorsque le formulaire correspond à nouveau à son état initial.
errorsArray[]Tableau de chaînes à afficher comme messages d'erreur sur ce champ.
helpString''Texte pour le texte d'aide associé à l'entrée.
idStringinput_{n}L'identifiant unique de l'entrée. Fournir un identifiant permet également d'accéder globalement au nœud de l'entrée.
ignoreBooleanfalseEmpêche une entrée d'être incluse dans un parent (groupe, liste, formulaire, etc). Utile lors de l'utilisation d'entrées pour l'interface utilisateur au lieu de valeurs réelles.
indexNumberundefinedPermet d'insérer une entrée à l'index donné si le parent est une liste. Si la valeur de l'entrée est indéfinie, elle hérite de la valeur de cette position d'index. Si elle a une valeur, elle l'insère dans les valeurs de la liste à l'index donné.
labelString''Texte pour l'élément label associé à l'entrée.
nameStringinput_{n}Le nom de l'entrée tel qu'identifié dans l'objet de données. Cela doit être unique au sein d'un groupe de champs.
parentFormKitNodecontextualPar défaut, le parent est un groupe d'enrobage, une liste ou un formulaire — mais cette propriété permet une affectation explicite du nœud parent.
prefix-iconString''Spécifie une icône à placer dans la section prefixIcon.
preservebooleanfalseConserve la valeur de l'entrée sur un groupe parent, une liste ou un formulaire lorsque l'entrée est démontée.
preserve-errorsbooleanfalsePar défaut, les erreurs définies sur les entrées à l'aide de setErrors sont automatiquement effacées lors de l'entrée, en définissant cette propriété sur true, l'erreur est maintenue jusqu'à ce qu'elle soit explicitement effacée.
sections-schemaObject{}Un objet de clés de section et de valeurs partielles de schéma, où chaque partie de schéma est appliquée à la section respective.
suffix-iconString''Spécifie une icône à placer dans la section suffixIcon.
typeStringtextLe type d'entrée à afficher à partir de la bibliothèque.
validationString, Array[]Les règles de validation à appliquer à l'entrée.
validation-visibilityStringblurDétermine quand afficher les règles de validation en échec d'une entrée. Les valeurs valides sont blur, dirty et live.
validation-labelString{label prop}Détermine quelle étiquette utiliser dans les messages d'erreur de validation, par défaut, elle utilise la propriété label si elle est disponible, sinon elle utilise la propriété name.
validation-rulesObject{}Règles de validation personnalisées supplémentaires à rendre disponibles pour la propriété de validation.
valueAnyundefinedInitialise la valeur initiale d'une entrée et/ou de ses enfants. Non réactif. Peut initialiser des groupes entiers (formulaires) et des listes..

Sections

Vous pouvez cibler une section spécifique d'une entrée en utilisant la "key" de cette section, ce qui vous permet de modifier les classes de cette section, le HTML (via :sections-schema) ou le contenu (via des emplacements)). En savoir plus sur les sections ici.

⚫️
Effets sonores
Activer ou désactiver les effets sonores.
Une erreur s'est produite.
Section-keyDescription
trackLa section track est l'arrière-plan du basculeur (la zone sur laquelle le bouton glisse).
thumbLa section thumb est l'élément qui glisse sur le track.
thumbIconLa section thumbIcon est l'icône qui est rendue à l'intérieur de la section thumb (lorsque la propriété thumb-icon est définie).
valueLabelUn élément d'étiquette supplémentaire, rendu lorsque les propriétés value-label sont utilisées. Affiché à droite du basculeur.
altLabelUn élément d'étiquette pour l'étiquette. Cette étiquette est rendue lorsque les propriétés value-label sont utilisées.
innerLabelUn élément d'étiquette utilisé lorsque les propriétés value-label sont fournies et que value-label-display est réglé sur inner.
Afficher Universel section keys
outerL'élément d'enrobage le plus externe.
wrapperUn enrobage autour de l'étiquette et de l'entrée.
labelL'étiquette de l'entrée.
prefixN'a pas de sortie par défaut, mais permet du contenu directement avant un élément d'entrée.
prefixIconUn élément pour afficher une icône avant la section de préfixe.
innerUn enrobage autour de l'élément d'entrée réel.
suffixN'a pas de sortie par défaut, mais permet du contenu directement après un élément d'entrée.
suffixIconUn élément pour afficher une icône après la section de suffixe.
inputL'élément d'entrée lui-même.
helpL'élément contenant le texte d'aide.
messagesUn enrobage autour de tous les messages.
messageL'élément (ou plusieurs éléments) contenant un message — le plus souvent des messages de validation et d'erreur.

Accessibilité

Tous les champs de saisie FormKit sont conçus en tenant compte des considérations d'accessibilité suivantes. Aidez-nous à améliorer continuellement l'accessibilité pour tous en signalant les problèmes d'accessibilité ici :

Balises sémantiquesAttributs AriaAccessible au clavierIndicateurs de focusContraste des couleurs avec le thème fourniÉtiquettes accessibles, texte d'aide et erreurs
Clé de SectionAttributPar défautDescription
altLabelforAssocie le label à un élément de saisie. Les utilisateurs peuvent cliquer sur le label pour mettre le focus sur l'élément de saisie ou pour basculer entre les états.
valueLabelforAssocie le label à un élément de saisie. Les utilisateurs peuvent cliquer sur le label pour mettre le focus sur l'élément de saisie ou pour basculer entre les états.
innerforAssocie le label à un élément de saisie. Les utilisateurs peuvent cliquer sur le label pour mettre le focus sur l'élément de saisie ou pour basculer entre les états.
Afficher Universel clé de section
labellabelforAssocie cela à un élément de saisie, améliorant l'accessibilité et l'expérience utilisateur
inputinputdisabledDésactive un élément HTML, empêchant l'interaction de l'utilisateur et signalant un état non interactif
aria-describedbyAméliore l'accessibilité en associant un élément à une description, facilitant la lecture par les lecteurs d'écran
aria-requiredAjoute l'état requis lorsque la validation est requise.
iconiconforChaque fois qu'une icône est définie comme libellé, elle la relie à un élément de saisie, améliorant l'accessibilité et l'expérience utilisateur

Interactions au clavier

Événement clavierDescription
TabDéplace le focus vers la prochaine entrée pouvant être ciblée sur la page.
Shift + TabDéplace le focus vers l'entrée précédente pouvant être ciblée sur la page.