⊗jsrtPmRtAD 32 of 47 menu

Ajouter des données dans React Router

Dans les leçons précédentes, nous avons préparé le chargeur et le déchargement des données pour une route spécifique depuis le stockage. Faisons maintenant connaissance, sur l'exemple de notre application, de la façon d'ajouter un nouveau produit et d'enregistrer ses données dans le stockage.

Ouvrons le fichier root.jsx et ajoutons dans le layout un bouton pour ajouter un nouveau produit avant nav, en l'enveloppant dans une balise formulaire. Nous allons aussi maintenant envelopper le bouton et notre liste dans une autre div avec #menu. Le layout ressemblera maintenant à ceci :

return ( <div id="main"> <div id="menu"> <form method="post"> <button type="submit">add product</button> </form> {products.length ? ( <nav> {products.map((product) => ( <Link key={product.id} to={`products/${product.id}`}> {product.name ? product.name : <i>Unnamed</i>} </Link> ))} </nav> ) : ( <p> <i>no products here ...</i> </p> )} </div> <div id="product"> <Outlet /> </div> </div> );

Si nous allons maintenant dans l'onglet 'Réseau' du panneau de développement, puis que nous cliquons sur notre bouton, nous verrons une requête de document erronée vers le serveur. Avec React Router, nous allons à nouveau utiliser le routage côté client, en évitant la requête vers le serveur.

Pour cela, changeons la balise form par le composant Form de React Router. Ajoutons pour commencer l'import de Form :

import { Form } from 'react-router-dom';

Maintenant, remplaçons les balises form dans le morceau de code :

<Form method="post"> <button type="submit">add product</button> </Form>

Rechargez notre application et regardez à nouveau le panneau de développement. Cliquons sur le bouton d'ajout de produit - maintenant, il n'y a plus de requête vers le serveur (ne faites pas attention à l'erreur pour le moment).

Prenez l'application que vous avez créée dans les tâches des leçons précédentes. En utilisant le matériel de la leçon, corrigez le rendu de la fonction Root, ajoutez un bouton pour ajouter un étudiant dans la balise form. Assurez-vous que lorsqu'on appuie sur le bouton, une requête est envoyée au serveur.

Et maintenant, remplacez la balise form par le composant Form. Assurez-vous que lorsqu'on clique sur le bouton d'ajout d'étudiant, aucune requête n'est envoyée au serveur.

Français
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Nous utilisons des cookies pour le fonctionnement du site, l'analyse et la personnalisation. Le traitement des données est effectué conformément à la Politique de confidentialité.
accepter tout personnaliser refuser