⊗jsrtPmRtADA 34 of 47 menu

Hinzufügen von Daten mit der action-Methode in React Router

In dieser Lektion machen wir uns mit der Methode action des Routenobjekts vertraut. Diese Methode wird aufgerufen, wenn die Anwendung eine HTTP-Anfrage vom Typ POST, PUT, PATCH oder DELETE (außer GET) an Ihre Route sendet.

Zuerst importieren wir die Funktion zum Erstellen eines Produkts, die wir in der letzten Lektion geschrieben haben, in unsere root.jsx:

import { createProduct } from '../forStorage';

Jetzt müssen wir eine action-Funktion erstellen, die von React Router beim Klick auf den Button zum Hinzufügen eines Produkts aufgerufen wird. Wir platzieren sie nach der loader-Funktion:

export async function action() { const product = await createProduct(); return { product }; }

Öffnen wir main.jsx und importieren die action:

import Root, { loader as rootLoader, action as rootAction } from './routes/root';

Und setzen sie als Wert für die Methode action des Routenobjekts. Die Form-Komponente verhindert, dass der Browser beim Klick auf den Button Anfragen an den Server sendet, und wendet sich stattdessen an die Methode action unserer Route. So interessant funktioniert Client-seitiges Routing mit React Router:

const router = createBrowserRouter([ { path: '/', element: <Root />, errorElement: <ErrorPage404 />, loader: rootLoader, action: rootAction, children: [ { path: 'products/:productId', element: <Product />, }, ], }, ]);

Starten wir unsere Anwendung. Öffnen wir den Tab 'Anwendung' (Application für Chrome) in den Entwicklerwerkzeugen, klicken wir unter verschiedenen Speichertypen auf indexedDB, hier interessiert uns localforage. Wenn wir jetzt in unserer Anwendung auf den Button zum Hinzufügen von Produkten klicken und den localforage-Speicher nach dem Klick aktualisieren, sehen wir, wie in keyvaluepairs im Array products Objekte mit verschiedenen id hinzugefügt werden. Sieg!!! Das bedeutet, dass in unserem Speicher Einträge erstellt werden! Natürlich wird auch die Liste in unserer Anwendung erweitert. Hinweis: Vergessen Sie nicht, die gespeicherten Daten dieser Seite später im Tab 'Storage' in Application zu löschen.

Nehmen Sie die Anwendung, die Sie in den Aufgaben zu den vorherigen Lektionen erstellt haben. Erstellen Sie unter Verwendung des Lehrmaterials die Funktion action, fügen Sie sie dem Stammroutenobjekt als Methode action hinzu.

Deutsch
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wir verwenden Cookies für den Betrieb der Website, Analyse und Personalisierung. Die Datenverarbeitung erfolgt gemäß der Datenschutzerklärung.
alle akzeptieren anpassen ablehnen