React Hook Form est l'un des frameworks les plus performants et flexibles pour react et react native pour construire des formulaires. Tandis que yup est l'une des bibliothèques les plus simples et les plus agréables pour valider la structure des données. En combinant les deux, vous obtenez un flux de travail fluide et efficace que je vous suggère fortement d'essayer.
Quelques interrogation me venaient cependant souvent à l'esprit :
Après avoir remarqué que je copiais à chaque fois le même code, j'ai fini par créer ces deux hooks pour pouvoir concevoir rapidement un formulaire avec sa validation dans une application react.
Et après quelques réflexions, voici ces extraits de code qui profitent de l'inférence de type TypeScript pour donner l'auto-complétion et la sécurité de type.
Rien de bien compliqué, il suffit simplement de copier le code ci-dessus et essayez de l'utiliser, il a été fait en deux formats différents, chacun ayant son propre but.
Faites attention au fait que vous n'avez pas besoin de passer un resolver aux arguments useform car il sera de toute façon écrasé par l'extrait de code comme vous pouvez le voir.
La vraie valeur ajoutée ici est dans l'inférence de type Typescript qui donne une bonne auto-complétion et la sécurité des types.
Si vous n'avez pas encore de schéma et que vous ne voulez pas importer yup partout, utilisez la fonction d'usinage. De plus, cela permet de jouer avec la validation dynamique.
Cela a un léger coût en termes de performances, car le render est renouvelé à chaque fois, ce qui implique la création d'un nouveau schéma à chaque fois. C'est pourquoi vous pouvez envisager l'autre approche si jamais des problèmes de performances se font sentir.