⊗jsrxPmATSP 57 of 57 menu

Stránka predajcu v Reduxe

Už nám zostáva len málo. Na tejto lekcii urobíme poslednú vec - pridáme do našej aplikácie samostatnú stránku pre každého predajcu. Pôjde len o vám už známe akcie. Poďme na to.

Otvorme našu aplikáciu s produktmi a v nej priečinok sellers. V tomto priečinku vytvoríme súbor SellerPage.jsx. Teraz začneme písať kód SellerPage pre náš komponent:

export const SellerPage = () => {}

Na začiatok získame id predajcu a podľa neho nájdeme objekt potrebného predajcu v slice:

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

Ďalej nižšie v kóde pre SellerPage po získaní predajcu získame všetky produkty a potom vyberieme z nich len tie, ktoré sú vystavené týmto predajcom:

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

A potom z názvov vybraných produktov vytvoríme zoznam pomocou map. Pričom každý názov produktu v tomto zozname bude odkazom na stránku tohto produktu:

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

A na konci kódu pre SellerPage vrátime verziu: nadpis s menom predajcu a zoznam produktov, ktoré tento predajca vystavil:

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

Samozrejme, potrebujeme aj route pre stránku predajcu. Otvorme súbor App.jsx a pridajme ho ako posledný medzi podriadené routes:

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

Nezabudnite importovať potrebné hooks a komponenty do SellersPage.jsx a App.jsx.

Spustíme našu aplikáciu, načítame produkty, a potom v menu vľavo klikneme na odkaz 'Sellers'. Teraz môžeme ísť na stránku ľubovoľného predajcu kliknutím na jeho názov a potom na jeho stránke uvidíme všetky jeho produkty. A kliknutím na ľubovoľný z jeho produktov, prejdeme na stránku s týmto produktom.

To je zatiaľ všetko. Naučili sme sa základy Reduxu pre tvorbu aplikácie a dokonca aj trochu hĺbšie. Zoznámili sme sa s rôznymi užitočnými nástrojmi. Prajem vám veľa šťastia pri tvorbe vašich Redux aplikácií!

Otvorte vašu aplikáciu so študentmi. Po preštudovaní materiálov lekcie, v priečinku teachers vytvorte súbor TeacherPage.jsx. V kóde komponentu TeacherPage získajte objekt s potrebným učiteľom a všetkých študentov daného učiteľa. Pomocou map z nich vytvorte zoznam, nech meno každého študenta bude odkazom na stránku tohto študenta.

Nech vo vrátenej verzii budete mať nadpis s menom učiteľa, nižšie bude menší nadpis - s predmetom, ktorý učí, a ešte nižšie zoznam jeho študentov.

V App.jsx pripojte ešte jeden podriadený route pre stránku s učiteľom.

Spustite vašu aplikáciu a presvedčte sa, že všetko funguje.

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ť