⊗jsrtPmRtANR 26 of 47 menu

Pridanie ďalšej trasy v React Router

Máme koreňovú trasu, ktorá vedie na domovskú stránku, kde máme odkazy na produkty. Poďme teraz pridať ďalšiu trasu, aby sa pri kliknutí na jeden z odkazov zobrazila stránka produktu, a nie obrazovka s chybou.

Na začiatok otvorme našu aplikáciu, ktorú sme robili v predchádzajúcich lekciách a vytvorme v priečinku routes súbor product.jsx. Vytvorme v ňom komponent Product:

function Product() {} export default Product;

Teraz vytvorme vnútri Product objekt product, s vlastnosťami name, cost a amount, zatiaľ to budú nejaké pevne nastavené hodnoty:

function Product() { const product = { name: 'Product', cost: 400, amount: 5, }; } export default Product;

A na stránke produktu budeme zobrazovať, zodpovedajúcim spôsobom, jeho názov, cenu a množstvo:

return ( <div> <h2>Product page</h2> <p>Name: {product.name}</p> <p>Cost: {product.cost}</p> <p>Amount: {product.amount}</p> </div> );

Nezabudnime pridať import komponentu Product do súboru main.jsx:

import Product from './routes/product';

A nakoniec, pridajme ďalšiu trasu do našej aplikácie, urobme to hneď po koreňovej. Ako cestu zadajme 'products/:productId', a ako element na zobrazenie nám slúži komponent Product:

{ path: '/', element: <Root />, errorElement: <ErrorPage404 />, }, { path: 'products/:productId', element: <Product />, },

A teraz spustíme aplikáciu, klikáme na odkazy a ocitneme sa na stránke s produktom (zatiaľ je rovnaká pre všetky odkazy), a nie s chybou.

Vezmite aplikáciu, ktorú ste vytvorili v úlohách k predchádzajúcim lekciám. Použite materiály z lekcie a vytvorte podobným spôsobom súbor student.jsx, nech sa na stránke študenta zobrazuje jeho meno, priezvisko, rok nástupu a špecializácia. Pridajte novú trasu pre stránku študenta do súboru main.jsx, nastavte hodnotu path na 'students/:studentId'. Uistite sa, že pri kliknutí na odkaz sa dostanete teraz na stránku študenta.

Slovenčina
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Používame cookies na fungovanie stránky, analýzu a personalizáciu. Spracúvanie údajov prebieha v súlade s Politikou ochrany osobných údajov.
prijať všetky nastaviť odmietnuť