1 00:00:02,380 --> 00:00:04,460 Maintenant, pour valider ce que l'utilisateur a 2 00:00:04,480 --> 00:00:07,680 entré, je veux bien sûr faire quelque chose à chaque frappe. 3 00:00:07,690 --> 00:00:11,740 Maintenant, nous avons déjà mis onChangeText ici en tant qu'auditeur sur le titre par exemple et 4 00:00:11,740 --> 00:00:15,700 ce que nous faisons maintenant, c'est que nous définissons le titre dans notre état. 5 00:00:15,790 --> 00:00:18,700 Maintenant, l'étape suivante consiste non seulement à faire cela, 6 00:00:18,700 --> 00:00:25,270 donc à ne pas simplement enregistrer l'entrée mais aussi à la valider et également à gérer la validité de cette entrée 7 00:00:25,510 --> 00:00:26,780 dans un état. 8 00:00:26,860 --> 00:00:36,620 Donc, par conséquent, je vais ajouter une nouvelle fonction ici, par exemple le gestionnaire de changement de titre qui obtient le texte entré et peut ensuite faire quelque chose et je 9 00:00:36,620 --> 00:00:41,870 vais juste l'externaliser dans une fonction nommée distincte pour avoir un peu plus propre, plus facile 10 00:00:41,870 --> 00:00:48,830 à suivre le long du code parce que maintenant je vais lier cet écouteur ici à mon événement onChangeText, afin que cette 11 00:00:48,830 --> 00:00:55,610 fonction se déclenche à chaque frappe et là bien sûr, je vais toujours définir mon titre avec le texte mais maintenant en 12 00:00:55,610 --> 00:00:56,290 plus comme 13 00:00:56,300 --> 00:01:00,220 je l'ai dit, je veux aussi gérer la validité et pour cela 14 00:01:00,230 --> 00:01:03,590 nous pouvons ajouter un autre état que nous voulons gérer. 15 00:01:03,590 --> 00:01:10,580 Donc, peut-être qu'après avoir géré la valeur du titre, nous pouvons également avoir le titre est un état valide ou tout 16 00:01:10,580 --> 00:01:16,100 ce que vous voulez l'appeler et ajouter le titre d'ensemble est ici valide en tant que fonction 17 00:01:16,280 --> 00:01:18,780 de définition, puis cet état ici initialement 18 00:01:18,800 --> 00:01:27,000 pourrait être faux afin que nous traitions initialement ce n'est pas valide. Maintenant, pour chaque frappe ici dans le gestionnaire de changement de titre, avant que 19 00:01:27,630 --> 00:01:33,180 nous puissions le stocker et mettre à jour notre état de titre, nous pouvons bien sûr le valider et maintenant 20 00:01:33,210 --> 00:01:36,320 c'est à vous de décider comment vous voulez le valider. 21 00:01:36,390 --> 00:01:45,130 Maintenant, par exemple, vous pouvez dire que cela n'est valable que si vous avez un texte qui n'est pas vide, donc si la longueur du texte 22 00:01:45,130 --> 00:01:47,990 est supérieure à zéro. Le texte est une chaîne 23 00:01:48,000 --> 00:01:51,650 bien sûr, donc si la longueur est nulle, cela signifie que c'est une chaîne vide. 24 00:01:51,660 --> 00:01:58,920 Nous pouvons également appeler du texte. couper pour couper les espaces blancs en excès de sorte que juste un tas d'espaces blancs ne 25 00:01:58,920 --> 00:02:00,630 soit pas non plus considéré comme valide. 26 00:02:00,660 --> 00:02:05,760 Bien sûr, vous pouvez également ajouter une validation de longueur minimale ou maximale en vérifiant la longueur ici, vous pouvez 27 00:02:05,790 --> 00:02:10,420 ajouter une validation d'expression régulière pour vérifier le texte de certains modèles et c'est en fait quelque 28 00:02:10,440 --> 00:02:12,820 chose que nous ferons plus tard, mais pour 29 00:02:13,170 --> 00:02:15,620 commencer, je vais il suffit de le vérifier comme 30 00:02:16,110 --> 00:02:19,490 ça et maintenant ici, si nous sommes supérieurs à zéro, nous allons bien, 31 00:02:19,500 --> 00:02:23,550 mais en fait, si nous avons une longueur de zéro, nous ne sommes pas bien. 32 00:02:23,550 --> 00:02:25,100 Donc ici, je veux 33 00:02:25,320 --> 00:02:30,870 définir le titre est valide à faux, sinon nous définissons le titre est valide à 34 00:02:30,880 --> 00:02:31,810 vrai 35 00:02:31,810 --> 00:02:34,810 bien sûr, donc si nous avons une entrée 36 00:02:34,810 --> 00:02:40,420 valide et nous allons toujours définir le titre lui-même, nous devons toujours le stocker, nous 37 00:02:40,420 --> 00:02:42,580 ne doit jamais perdre cette entrée 38 00:02:42,580 --> 00:02:44,410 utilisateur sinon nous cassons l'application. 39 00:02:44,410 --> 00:02:50,890 Et maintenant, avec la validité du titre stockée dans l'état, nous pouvons bien sûr l'utiliser ici dans notre code jsx 40 00:02:50,890 --> 00:02:56,980 pour vérifier si le titre n'est pas valide par exemple et si c'est le cas, nous pouvons sortir 41 00:02:56,980 --> 00:03:04,000 dynamiquement un texte ici où nous disons par exemple veuillez entrer un titre valide pour afficher ici un petit message d'erreur 42 00:03:04,000 --> 00:03:06,670 auquel vous pouvez également attribuer un style. 43 00:03:06,700 --> 00:03:11,530 Maintenant, avec cela, vous voyez que si nous allons à notre entrée ici, nous voyons que le message d'erreur 44 00:03:11,560 --> 00:03:15,900 dès le début parce que nous commençons dans un état non valide et si nous commençons à 45 00:03:15,910 --> 00:03:22,330 taper, cela disparaît mais si je supprime toutes les entrées, il réapparaît et c'est une validation de base que vous pourriez ajouter pour afficher un 46 00:03:22,390 --> 00:03:27,910 petit message d'erreur ou un petit indice à votre utilisateur, pour vous assurer que les utilisateurs ont au moins une idée 47 00:03:27,910 --> 00:03:29,790 du type d'entrée que vous souhaitez. 48 00:03:29,800 --> 00:03:36,700 Maintenant, bien sûr, vous pouvez non seulement utiliser cette validité pour générer des messages d'erreur, mais aussi pour éviter que votre 49 00:03:36,700 --> 00:03:39,780 formulaire ne soit soumis s'il n'est pas valide. 50 00:03:39,820 --> 00:03:47,230 Donc, ici, dans le gestionnaire de soumission, où je soumets toujours mes données et crée ou met à jour un produit, 51 00:03:47,230 --> 00:03:51,190 peu importe si la saisie est valide, nous pouvons utiliser les données 52 00:03:51,190 --> 00:03:56,530 de validité que nous avons recueillies et par exemple vérifier si le titre est valide 53 00:03:56,550 --> 00:03:58,000 et s'il ne l'est 54 00:03:58,060 --> 00:03:59,500 pas. valide, d'où 55 00:03:59,500 --> 00:04:04,770 le point d'exclamation, puis nous revenons simplement ce qui signifie que nous annulons l'exécution de 56 00:04:04,850 --> 00:04:07,490 la fonction et que le code par 57 00:04:07,510 --> 00:04:13,630 la suite ne s'exécutera pas. belle alerte native ici. Nous pouvons donc simplement afficher une alerte avec 58 00:04:13,630 --> 00:04:24,520 un message de mauvaise entrée ou un titre de celui-ci et un message de s'il vous plaît vérifier les erreurs dans le formulaire et ensuite simplement ajouter un 59 00:04:25,090 --> 00:04:32,620 bouton là où nous disons bien parce qu'il n'y a rien d'autre à faire ensuite pour confirmer, eh bien avec 60 00:04:32,620 --> 00:04:33,870 cela, nous 61 00:04:34,180 --> 00:04:39,760 avons un bon flux ici où nous avertissons l'utilisateur que l'entrée n'est pas valide. 62 00:04:39,760 --> 00:04:45,570 Donc, par exemple maintenant, si j'essaie de soumettre cette entrée avec mon titre invalide, j'obtiens cette erreur et seulement si j'entre 63 00:04:45,580 --> 00:04:51,250 un titre valide, je peux le soumettre parce que je n'ai pas encore ajouté de validation pour les autres entrées 64 00:04:51,250 --> 00:04:53,140 que nous devrions bien sûr . 65 00:04:53,140 --> 00:04:56,410 C'est donc à quel point vous pouvez commencer facilement avec la validation. 66 00:04:56,440 --> 00:05:02,260 Maintenant que nous avons utilisé Javascript ici, vous pouvez bien sûr également apporter d'autres bibliothèques de validation tierces, comme par 67 00:05:02,950 --> 00:05:09,250 exemple ValidateJS qui est un package que vous pouvez installer dans votre projet et commencer à l'utiliser pour ensuite valider facilement les chaînes 68 00:05:09,250 --> 00:05:15,310 de certains modèles si vous le souhaitez pour faire ça. Dans ce module, j'écrirai les modèles 69 00:05:15,310 --> 00:05:15,900 de 70 00:05:15,910 --> 00:05:21,760 base que nous utilisons manuellement afin que vous compreniez clairement ce qui se 71 00:05:21,790 --> 00:05:26,370 passe réellement là-bas, mais vous pouvez également apporter ces bibliothèques tierces. 72 00:05:26,380 --> 00:05:31,850 Eh bien et maintenant avec cette compréhension de base de la validation et ainsi de 73 00:05:31,990 --> 00:05:38,530 suite, assurons-nous que nous allons maintenant également vers une gestion des formulaires et des entrées plus évolutive et 74 00:05:38,620 --> 00:05:42,550 n'impliquant pas des tonnes d'états que nous devons gérer manuellement.