⊗jsrxPmRDPP 21 of 57 menu

Stranica za proizvod u Redux-u

Na ovoj lekciji ćemo napraviti posebnu stranicu za prikaz informacija o konkretnom proizvodu.

Otvorimo našu aplikaciju sa proizvodima i u folderu products kreirajmo fajl ProductPage.jsx. Kao što se sećate, svaki naš proizvod ima jedinstveni id. Zahvaljujući tom id-u moći ćemo da generišemo jedinstveni URL stranice za svaki proizvod. Tradicionalno će izgledati kao: /products/id123. I id će biti sadržan u njegovom dinamičkom delu (samim rutama ćemo se pozabaviti nešto kasnije).

Dakle, hajde da u ProductPage.jsx kreiramo praznu komponentu ProductPage:

export const ProductPage = () => {}

Prvo što ćemo uraditi ovde je da iskoristimo huk useParams, da izvučemo dinamički deo URL-a za stranicu proizvoda, na kojoj se nalazimo:

export const ProductPage = () => { let params = useParams() const { productId } = params }

Zatim po dobijenom id-u ćemo potražiti potreban proizvod u slice-u products u store-u, koristeći nama već poznati huk useSelector:

const product = useSelector((state) => state.products.find((product) => product.id === productId) )

Ne zaboravimo da importujemo oba huka u fajl:

import { useSelector } from 'react-redux' import { useParams } from 'react-router-dom'

Ako potreban proizvod ne bude pronađen (na primer, korisnik je uneo neispravnu adresu), onda ćemo prikazati informaciju o tome na ekranu. Na ovom koraku kod za komponentu ProductPage bi trebalo da izgleda ovako:

export const ProductPage = () => { let params = useParams() const { productId } = params const product = useSelector((state) => state.products.find((product) => product.id === productId) ) if (!product) { return <p>Nema takvog proizvoda</p> } }

I ostaje nam samo da prikažemo dobijene podatke o proizvodu u verzstiranju:

return ( <div> <h2>{product.name}</h2> <p>Opis: {product.desc}</p> <p>Cena: {product.price}</p> <p>Količina:{product.amount}</p> </div> )

Otvorite vašu aplikaciju sa studentima. U folderu students kreirajte fajl StudentPage.jsx, u kojem ćete dobijati i prikazivati informacije o odabranom studentu.

Pomoću react-redux huka useSelector dobijte potrebne informacije o studentu, kao što je prikazano na lekciji.

Prikažite u komponenti dobijene informacije o studentu na ekranu.

Srpski
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Koristimo kolačiće za rad sajta, analitiku i personalizaciju. Obrada podataka se vrši u skladu sa Politikom privatnosti.
prihvati sve podesi odbij