Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗jsrtPmRtANR 26 of 47 menu
◀ ▶

Přidání další trasy do React Router

Máme kořenovou trasu vedoucí na hlavní stránku, na které máme odkazy na produkty. Pojďme nyní přidat další trasu, aby při kliknutí na jeden z odkazů zobrazovala stránka produktu, a ne obrazovku s chybou.

Pro začátek otevřeme naši aplikaci, kterou jsme vytvářeli v předchozích lekcích a vytvořme ve složce routes soubor product.jsx. Vytvořme v něm komponentu Product:

function Product() {} export default Product;

Nyní vytvoříme uvnitř Product objekt product, s vlastnostmi name, cost a amount, prozatím to budou nějaké pevné hodnoty:

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

A na stránce produktu budeme zobrazovat, odpovídajícím způsobem, jeho název, cenu a množství:

return ( <div> <h2>Stránka produktu</h2> <p>Název: {product.name}</p> <p>Cena: {product.cost}</p> <p>Množství: {product.amount}</p> </div> );

Nezapomeňme přidat import komponenty Product do souboru main.jsx:

import Product from './routes/product';

A konečně, přidejme další trasu do naší aplikace, udělejme to ihned po kořenové. Jako cestu uvedeme 'products/:productId', a jako element pro zobrazení u nás vystupuje komponenta Product:

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

A nyní spustíme aplikaci, klikneme na odkazy a ocitneme se na stránce s produktem (prozatím je u nás stejná pro všechny odkazy), a ne s chybou.

Vezměte aplikaci, kterou jste vytvořili v úkolech k předchozím lekcím. Použijte materiály lekce, vytvořte podobným způsobem soubor student.jsx, ať na stránce studenta je zobrazeno jeho jméno, příjmení, rok nástupu a obor. Přidejte novou trasu pro stránku studenta do souboru main.jsx, nastavte hodnotu path na 'students/:studentId'. Ujistěte se, že při kliknutí na odkaz se dostanete nyní na stránku studenta.

← →
↑
Čeština▼
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяDanskDeutschΕλληνικά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
Používáme soubory cookie pro fungování webu, analýzu a personalizaci. Zpracování údajů probíhá v souladu s Zásadami ochrany osobních údajů.
přijmout vše přizpůsobit odmítnout