⊗jsrtPmRtRte 23 of 47 menu

Rute u React Router-u

Rute (Routes) su najvažniji deo aplikacije na React Router-u. Pogledajmo deo koda iz prethodne lekcije:

const router = createBrowserRouter([ { path: '/', element: <div>Hello Router!</div>, }, ]);

Dakle, svojstva objekta path i element, koja smo prosledili u funkciju prilikom kreiranja rutera, jesu svojstva objekta Route. Zapravo, ovaj objekat ima mnogo svojstava, ona se mogu naći u zvaničnoj dokumentaciji. U nastavku, neka od njih će nam zatrebati:

interface RouteObject { path?: string; index?: boolean; children?: React.ReactNode; caseSensitive?: boolean; id?: string; loader?: LoaderFunction; action?: ActionFunction; element?: React.ReactNode | null; Component?: React.ComponentType | null; errorElement?: React.ReactNode | null; ErrorBoundary?: React.ComponentType | null; handle?: RouteObject["handle"]; shouldRevalidate?: ShouldRevalidateFunction; lazy?: LazyRouteFunction<RouteObject>; }

Moglo se koristiti alternativni JSX stil i napisati svojstva u vidu props-a za komponentu Route, tada bi naš deo koda izgledao ovako:

const router = createBrowserRouter( createRoutesFromElements( <Route path = '/' element = {<div>Hello Router!</div>} /> ) );

I, naravno, bilo bi potrebno dodati još par linija u import:

import { createRoutesFromElements, createBrowserRouter, RouterProvider, Route, } from 'react-router-dom';

Oba stila data u lekciji su ravnopravna. Mi ćemo se u nastavku pridržavati prvog varijanta.

Uzmite aplikaciju, koju ste kreirali u zadacima za prethodne lekcije. Pokušajte prepisati deo koda za kreiranje rutera (stari za sada zakomentarišite), koristeći alternativni JSX sintaksu, dat u lekciji. Uverite se, da aplikacija radi.

Vratite na mesto ceo stari kod, a novi uklonite. Uverite se, da aplikacija radi.

Srpski
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Koristimo kolačiće za rad sajta, analitiku i personalizaciju. Obrada podataka se vrši u skladu sa Politikom privatnosti.
prihvati sve podesi odbij