⊗jsrxPmATSP 57 of 57 menu

Stránka prodejce v Redux

Zbývá už jen málo. Pojďme v této lekci udělat poslední věc - přidat do naší aplikace samostatnou stránku pro každého prodejce. Půjdou zde pouze již vám známé akce. Pusťme se do toho.

Otevřeme naši aplikaci s produkty, a v ní složku sellers. Vytvořme v této složce soubor SellerPage.jsx. Nyní začneme psát kód SellerPage pro náš komponent:

export const SellerPage = () => {}

Pro začátek získáme id prodejce a podle něj najdeme objekt potřebného prodejce ve slici:

export const SellerPage = () => { let params = useParams() const { sellerId } = params const seller = useSelector((state) => selectSellerById(state, sellerId)) }

Dále níže v kódu pro SellerPage po získání prodejce získáme všechny produkty, a poté vybereme z nich pouze ty, které jsou vystaveny daným prodejcem:

const productsOfSeller = useSelector((state) => { const allProducts = selectAllProducts(state) return allProducts.filter((product) => product.seller === sellerId) })

A dále z názvů vybraných produktů vytvoříme seznam pomocí map. Přičemž každý název produktu v tomto seznamu bude odkazem na stránku tohoto produktu:

const productNames = productsOfSeller.map((product) => ( <li key={product.id}> <Link to={`/products/${product.id}`}>{product.name}</Link> </li> ))

A na konci kódu pro SellerPage vrátíme verst: nadpis s názvem prodejce a seznam produktů, které vystavil tento prodejce:

return ( <div> <h2>Prodejce: {seller.name}</h2> <ul>{productNames}</ul> </div> )

Samozřejmě ještě potřebujeme trasu pro stránku prodejce. Otevřeme soubor App.jsx a přidejme ji jako poslední k podřízeným trasám:

{ path: '/sellers/:sellerId', element: <SellerPage />, },

Nezapomeňte importovat potřebné haky a komponenty do SellersPage.jsx a App.jsx.

Spustíme naši aplikaci, načteme produkty, a poté v menu vlevo klikneme na odkaz 'Sellers'. Nyní můžeme přejít na stránku libovolného prodejce kliknutím na jeho název, a poté na jeho stránce uvidět všechny jeho produkty. A kliknutím na libovolný z jeho produktů přejdeme na stránku s tímto produktem.

To je prozatím vše. Prostudovali jsme základy Redux pro vytváření aplikací a dokonce i trochu hlouběji. Seznámili jsme se s různými užitečnými nástroji. Přeji vám hodně štěstí při vytváření vašich Redux aplikací!

Otevřete vaši aplikaci se studenty. Po prostudování materiálů lekce ve složce teachers vytvořte soubor TeacherPage.jsx. V kódu komponentu TeacherPage získejte objekt s potřebným učitelem a všechny studenty daného učitele. Pomocí map z nich vytvořte seznam, nechť celé jméno každého studenta bude odkazem na stránku tohoto studenta.

Nechť ve vrácené verzi bude nadpis s celým jménem učitele, níže bude menší nadpis - s předmětem, který učí, a ještě níže seznam jeho studentů.

V App.jsx připojte další podřízenou trasu pro stránku s učitelem.

Spusťte vaši aplikaci a ujistěte se, že vše funguje.

Č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