⊗jsrtPmRtADA 34 of 47 menu

Tilføjelse af data med action-metoden i React Router

I denne lektion vil vi stifte bekendtskab med metoden action i ruteobjektet. Denne metode kaldes, når applikationen sender en HTTP-forespørgsel af typen POST, PUT, PATCH eller DELETE (undtagen GET) til din rute.

Lad os starte med at importere funktionen til at oprette et produkt, som vi skrev i den forrige lektion, ind i vores root.jsx:

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

Nu er vi nødt til at oprette en action-funktion, som React Router vil kalde ved klik på knappen til tilføjelse af produkt, vi placerer den efter funktionen loader:

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

Lad os åbne main.jsx og importere action:

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

Og sætte den som værdi for metoden action for ruteobjektet. Komponentet Form vil forhindre browseren i at sende forespørgsler til serveren ved tryk på knappen, men i stedet henvende sig til metoden action i vores rute. Sådan fungerer klient-side routing med React Router på en interessant måde:

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

Lad os starte vores applikation. Åbn fanen 'Applikation' (Application for Chrome) i udviklerpanelet, klik på indexedDB blandt de forskellige typer af lager, her er vi interesserede i localforage. Nu ved at klikke på knappen til tilføjelse af produkter i vores applikation og opdatere localforage-lageret efter klikket ser vi, hvordan der i keyvaluepairs i arrayet products tilføjes objekter med forskellige id. Sejr!!! Det betyder, at der oprettes poster i vores lager! Selvfølgelig bliver listen i vores applikation også udvidet. Tip: glem ikke at rydde de gemte data på denne side senere under fanen 'Storage' i Application.

Tag den applikation, du oprettede i opgaverne til de foregående lektioner. Brug materialet fra lektionen til at oprette en funktion action, tilføj den til rodrutens objekt som en action-metode.

Dansk
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDeutschΕλληνικά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
Vi bruger cookies til webstedets funktion, analyse og personalisering. Behandling af data foregår i henhold til Fortrolighedspolitikken.
accepter alle tilpas afvis