Comment valider l'PropTypes d'un objet imbriqué dans ReactJS?
Je suis en utilisant un objet de données comme mes accessoires pour un composant de ReactJS.
<Field data={data} />
Je sais que c'est très facile de valider la PropTypes objet lui-même:
propTypes: {
data: React.PropTypes.object
}
Mais que faire si je veux valider les valeurs à l'intérieur? c'est à dire. les données.id de données.titre?
props[propName]: React.PropTypes.number.required //etc...
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser
React.PropTypes.shape
pour valider les propriétés:Mise à jour
Comme @Chris l'a souligné dans les commentaires, que de Réagir version 15.5.0
React.PropTypes
a déménagé à forfaitprop-types
.Plus d'infos
React.PropTypes
est maintenant obsolète. Veuillez utiliserPropTypes
de laprop-types
paquet. Plus d'infos iciSi
React.PropTypes.shape
ne vous donne pas le niveau de la vérification du type que vous voulez, jetez un oeil à tcomb-réagir.Il fournit un
toPropTypes()
fonction qui permet de valider un schéma défini avec le tcomb bibliothèque en faisant usage de Réagir de support pour la définition de custompropTypes
validateurs, l'exécution de validations en utilisant tcomb-validation.Exemple de base de ses docs: