meta données pour cette page
  •  

Ceci est une ancienne révision du document !


<WRAP info> Les validateurs s'utilisent à l'intérieur d'un composant &lt;dx-validator&gt; via la balise &lt;dxi-validation-rule&gt;. </WRAP>

Validateurs DevExtreme (Validation Rules)

Type Description Attributs principaux
required Rend le champ obligatoire. message
range Vérifie qu'une valeur est comprise entre deux bornes (dates ou nombres). min, max, message
stringLength Contrôle le nombre de caractères. min, max, trim, message
pattern Valide la saisie via une expression régulière (Regex). pattern (ex: /[0-9]/), message
email Vérifie que le format correspond à une adresse email. message
compare Compare la valeur avec un autre champ ou une constante. comparisonTarget (fonction), comparisonType, message
numeric Vérifie que la valeur est un nombre. message
custom Permet de créer une logique métier complexe en TypeScript. validationCallback, message, reevaluate
async Pour les validations nécessitant un appel API (ex: vérification unicité). validationCallback (doit retourner une Promise/Observable)

Détails techniques des règles

Required (Obligatoire)

C'est le plus commun. Il vérifie que la valeur n'est ni null, ni undefined, ni une chaîne vide.

<dxi-validation-rule type="required" message="Le nom est requis"></dxi-validation-rule>

Range (Plage de valeurs)

Indispensable pour les dates de naissance ou les montants.

min : Valeur minimum autorisée.

max : Valeur maximum autorisée.

<dxi-validation-rule type="range" [max]="today" message="Date invalide"></dxi-validation-rule>

Pattern (Regex)

Idéal pour les codes postaux, numéros de téléphone ou formats spécifiques (IBAN).

<dxi-validation-rule type="pattern" pattern="^[0-9]{5}$" message="Code postal invalide"></dxi-validation-rule>

Custom (Personnalisé)

Utilisé quand les règles standards ne suffisent pas. La fonction de callback reçoit un objet contenant la valeur.

<dxi-validation-rule type="custom" [validationCallback]="maFonctionTS" message="Erreur métier"></dxi-validation-rule>

Async (Asynchrone)

Utilisé pour vérifier une donnée sur le serveur sans bloquer l'interface.

<dxi-validation-rule type="async" [validationCallback]="checkUserExists" message="Déjà utilisé"></dxi-validation-rule>

Propriétés communes à toutes les règles message : Le texte qui sera affiché dans le résumé d'erreurs (votre Toast).

ignoreEmptyValue : (Boolean) Si true, la règle n'est pas testée si le champ est vide (sauf pour la règle required).

reevaluate : (Boolean) Force la règle à se re-valider même si la valeur n'a pas changé (utile pour les comparaisons entre deux champs).