1 00:00:02,170 --> 00:00:10,580 Maintenant, nous savons comment nous pouvons stocker et récupérer des données, bien sûr dans notre application, nous pouvons également modifier et supprimer des données. 2 00:00:10,690 --> 00:00:15,760 Alors assurons-nous que cela fonctionne aussi bien et pour cela, je vais 3 00:00:16,360 --> 00:00:26,320 revenir à mes actions et là-bas, dans le fichier d'actions des produits, nous avons notre créateur d'action de mise à jour du produit ici. 4 00:00:26,360 --> 00:00:31,050 Maintenant, comme auparavant, je vais maintenant changer cela pour retourner une répartition 5 00:00:31,340 --> 00:00:39,440 asynchrone, puis à la fin, là-bas, répartir cette action ici, alors déplacez-la là-bas et appelez la fonction de répartition ici que nous obtenons 6 00:00:39,440 --> 00:00:42,250 via Redux Thunk et avant Pour ce 7 00:00:42,470 --> 00:00:47,420 faire, nous pouvons maintenant contacter le serveur et y mettre à jour nos données. 8 00:00:47,470 --> 00:00:55,010 Maintenant, ce sera assez simple, nous pouvons simplement utiliser à nouveau la syntaxe de create product, ceci ici, donc seule la demande 9 00:00:55,010 --> 00:01:02,390 de récupération devrait suffire ici et faire cela avant d'envoyer, merci d'attendre, car cette fonction d'expédition sera invisible. est enveloppé dans 10 00:01:02,390 --> 00:01:07,610 le bloqué qui appartient à cette promesse mais nous devons modifier cette demande, l'URL par 11 00:01:07,610 --> 00:01:09,010 exemple n'est pas 12 00:01:09,020 --> 00:01:15,050 entièrement correcte, elle pointe vers le produit mais maintenant nous voulons pointer vers un produit spécifique, le 13 00:01:15,080 --> 00:01:20,990 seul produit que nous voulons mise à jour. Par conséquent, j'utiliserai ici une syntaxe Javascript 14 00:01:20,990 --> 00:01:26,960 différente avec des graduations au lieu de guillemets simples qui créent toujours une chaîne mais une 15 00:01:26,960 --> 00:01:33,980 chaîne dans laquelle je peux facilement injecter des données dynamiques et j'ajouterai un nouveau segment après les produits avant. json et nous pouvons maintenant injecter des données avec cette syntaxe $ \ et c'est du 16 00:01:33,980 --> 00:01:40,970 Javascript vanille, pas spécifique à React Native, c'est juste du Javascript et ici je veux 17 00:01:41,030 --> 00:01:48,850 ajouter mon ID, pour qu'à la fin je cible cette URL, puis le noeud produits puis cette ID. Bien sûr, si vous utilisez une autre API, Firebase les URL auxquelles vous devez envoyer votre demande 18 00:01:48,880 --> 00:01:55,630 différeront, alors vous devriez avoir une 19 00:01:55,660 --> 00:02:01,810 documentation API qui vous indique quelles URL sont acceptées ou si vous écrivez votre 20 00:02:01,810 --> 00:02:07,810 propre API, alors vous devrait certainement savoir où vous pouvez envoyer des demandes. C'est ce que Firebase veut et la méthode de mise à jour ne devrait pas non 21 00:02:07,810 --> 00:02:13,270 plus être post mais patch ou mise. Put remplacera entièrement la ressource avec 22 00:02:13,300 --> 00:02:20,980 les nouvelles données, patch la mettra à jour aux endroits 23 00:02:20,980 --> 00:02:27,130 où vous lui direz de la mettre à jour et c'est ce que je veux ici. Je dois également ajouter mes en-têtes et maintenant ajouter également un corps avec le titre, la description et 24 00:02:27,130 --> 00:02:34,270 l'imageUrl mais bien sûr pas avec le prix car nous 25 00:02:34,270 --> 00:02:38,240 n'obtenons pas cela et nous ne voulons pas y toucher et cela 26 00:02:38,980 --> 00:02:45,110 enverra la demande où Firebase ne modifiera automatiquement ces champs sur le produit qu'avec l'ID que nous ciblons. Maintenant, je n'ai plus besoin de stocker la réponse dans une constante parce que je 27 00:02:45,110 --> 00:02:51,390 m'en fiche de toute façon, il est 28 00:02:51,390 --> 00:02:56,880 juste important d'attendre que cela se termine et avec ça, nous devrions être bons. Si nous enregistrons maintenant cela et que nous allons ici pour administrer et commencer à modifier cela 29 00:02:56,880 --> 00:03:05,640 et peut-être ajouter un point d'exclamation ici et ensuite important, cliquez ailleurs 30 00:03:05,640 --> 00:03:12,540 pour que ce redéclenche en raison de notre logique de formulaire et soumette ses nouvelles données et nous cliquons ensuite sur 31 00:03:12,540 --> 00:03:19,140 cette coche, nous sommes repris et nous voyons une chemise blanche ici, nous voyons aussi cela sur Firebase, donc cela fonctionne. C'est donc ainsi que nous pouvons mettre à jour les données, et maintenant la suppression? Pour cela revenons à nos actions et pour la suppression, nous avons 32 00:03:19,140 --> 00:03:25,620 notre créateur d'actions. Maintenant, tout comme auparavant, 33 00:03:25,620 --> 00:03:32,550 je suis revenu ici en tant que 34 00:03:32,580 --> 00:03:40,250 fonction asynchrone qui obtient la répartition en tant qu'argument et où dans cette fonction, nous envoyons 35 00:03:40,250 --> 00:03:48,360 finalement cette action qui atteint notre réducteur et avant d'y arriver, nous pouvons à nouveau envoyer une demande. Demande qui ressemble à ceci, je vais copier cette partie ici, ne se soucie pas vraiment de 36 00:03:48,360 --> 00:03:56,950 la réponse, juste comme ça, attendez d'aller chercher. Maintenant, l'URL est incorrecte, tout comme pour la mise à jour, je veux y ajouter 37 00:03:56,950 --> 00:04:04,240 mon ID, donc j'utiliserai des ticks en arrière pour pouvoir utiliser 38 00:04:04,400 --> 00:04:10,900 à nouveau cette syntaxe d'injection et ajouter l'ID du produit ici, envoyer une demande de suppression et nous avons gagné pas besoin 39 00:04:11,350 --> 00:04:17,790 de définir un en-tête parce que nous n'aurons pas non plus de corps, donc nous pouvons nous débarrasser de tout cela, juste 40 00:04:17,790 --> 00:04:23,140 la méthode est importante et que nous attendons et donc maintenant, nous devrions également pouvoir supprimer les données. Nous pouvons y jeter un coup d'œil, si je crée un nouveau produit factice que je peux facilement supprimer sans trop 41 00:04:23,140 --> 00:04:28,570 en perdre, comme ça, si je l'enregistre, si je clique 42 00:04:28,570 --> 00:04:35,500 sur supprimer ici, cliquez sur oui c'est parti ici et aussi on l'a vu pendant une fraction de seconde ici, il a également été supprimé sur Firebase. C'est ainsi que nous pouvons également mettre à 43 00:04:35,860 --> 00:04:43,210 jour et supprimer.