⊗jsrtPmRtLd 30 of 47 menu

Maršruta datu ielādētājs React Router

Pēdējā nodarbībā mēs izvilkām produktu datus no krātuves. Tagad šie dati ir jāielādē maršruta elementā. Šim nolūkam tiek izmantota ielādētāja funkcija (loader). Tagad mēs to izveidosim.

Atvērsim root.jsx, pievienosim šeit importa rindiņu getProducts no forStorage.js:

import { getProducts } from '../forStorage'

Nekavējoties pēc importa rindiņām un pirms funkcijas Root uzrakstīsim kodu funkcijai loader, kas caur getProducts būs atgriezīs mums produktu datus no krātuves. Parasti šādas funkcijas jāraksta atsevišķā failā, bet mēs nedaudz paguravim, tāpēc nepievērsiet uzmanību brīdinājumam:

export async function loader() { const products = await getProducts(); return { products }; }

Tagad pievienosim mūsu ielādētāja importu main.jsx. Šis ielādētājs būs saknes maršrutam, tāpēc nosauksim to rootLoader:

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

Un pievienosim to mūsu maršruta objektam īpašībā loader:

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

Paņemiet lietotni, ko izveidojāt uzdevumos iepriekšējām nodarbībām. Izmantojot nodarbības materiālus, uzrakstiet failā root.jsx funkciju loader studentu datu ielādei un pievienojiet to maršruta objektam main.jsx.

Latviešu
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Mēs izmantojam sīkdatnes, lai nodrošinātu vietnes darbību, analīti un personalizāciju. Datu apstrāde notiek saskaņā ar Konfidencialitātes politiku.
pieņemt visus iestatīt noraidīt