⊗jsrxPmATSP 57 of 57 menu

Myyjän sivu Reduxissa

Vain vähän on tekemistä jäljellä. Tehdäänpä tällä tunnista viimeinen asia - lisätään sovellukseemme erillinen sivu jokaiselle myyjälle. Tässä on vain sinulle jo tuttuja toimintoja. Aloitetaan.

Avataan sovelluksemme tuotteiden kanssa, ja siinä kansio sellers. Luodaan tähän kansioon tiedosto SellerPage.jsx. Nyt aloitamme kirjoittamaan koodia SellerPage komponentillemme:

export const SellerPage = () => {}

Ensin haetaan myyjän id ja sen perusteella etsitään tarvittavan myyjän objekti slicestä:

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

Seuraavaksi alempana SellerPage koodissa myyjän saamisen jälkeen saamme kaikki tuotteet, ja sitten valitsemme niistä vain ne, jotka on listannut kyseinen myyjä:

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

Ja sitten valittujen tuotteiden nimistä muodostamme listan käyttämällä map. Lisäksi jokainen tuotteen nimi tässä listassa on linkki kyseisen tuotteen sivulle:

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

Ja lopussa SellerPage koodille palautamme HTML-rakenne: otsikko myyjän nimellä ja lista tuotteista, jotka tämä myyjä on listannut:

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

Tietysti tarvitsemme myös reitin myyjän sivulle. Avataan tiedosto App.jsx ja lisätään se viimeiseksi lasten reitteihin:

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

Älä unohda tuoda tarvittavat hookit ja komponentit tiedostoihin SellersPage.jsx ja App.jsx.

Käynnistetään sovelluksemme, ladataan tuotteet, ja sitten vasemmalla olevasta valikosta klikataan linkkiä 'Sellers'. Nyt voimme mennä minkä tahansa myyjän sivulle klikkaamalla hänen nimeään, ja sitten hänen sivullaan nähdä kaikki hänen tuotteensa. Ja klikkaamalla mitä tahansa hänen tuotteistaan, pääsemme kyseisen tuotteen sivulle.

Siinä kaikki toistaiseksi. Olemme oppineet Reduxin perusteet sovelluksen luomiseen ja jopa hieman syvenmälle. Tutustuimme erilaisiin hyödyllisiin työkaluihin. Toivon teille onnea luodessanne Redux-sovelluksianne!

Avaa opiskelijasovelluksesi. Opiskeltuasi tunnin materiaalin, luo kansioon teachers tiedosto TeacherPage.jsx. Komponentin TeacherPage koodissa hae objekti tarvittavasta opettajasta ja kaikki kyseisen opettajan opiskelijat. Käytä map luodaksesi niistä listan, olkoon jokaisen opiskelijan koko nimi linkkinä kyseisen opiskelijan sivulle.

Palautetussa HTML-rakenteessasi olkoon otsikko opettajan koko nimellä, alempi hieman pienempi otsikko - opettajan oppiaineella, jota hän opettaa, ja vielä alempana lista hänen opiskelijoistaan.

App.jsx tiedostossa liitä vielä yksi lapsi- reitti opettajan sivulle.

Käynnistä sovelluksesi ja varmista, että kaikki toimii.

Suomi
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Käytämme evästeitä verkkosivuston toiminnalle, analytiikalle ja personoinnille. Tietojen käsittely tapahtuu Tietosuojakäytännön mukaisesti.
hyväksy kaikki mukauta hylkää