⊗jsrxPmRDPP 21 of 57 menu

Pagina pentru produs în Redux

În această lecție vom crea o pagină separată pentru afișarea informațiilor despre un anumit produs.

Să deschidem aplicația noastră cu produsele și în folderul products să creem fișierul ProductPage.jsx. După cum vă amintiți, fiecare produs al nostru are un id unic. Datorită acestui id vom putea genera o adresă URL unică pentru fiecare produs. Tradițional, va arăta astfel: /products/id123. Și id-ul va fi conținut în partea sa dinamică (vom aborda ruta în sine ceva mai târziu).

Deci, să creem în ProductPage.jsx un component gol ProductPage:

export const ProductPage = () => {}

Primul lucru pe care îl vom face aici - vom folosi hook-ul useParams pentru a extrage partea dinamică a URL-ului pentru pagina produsului pe care ne aflăm:

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

Apoi, folosind id-ul obținut, vom căuta produsul necesar în slice-ul products din store, folosind hook-ul deja cunoscut useSelector:

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

Să nu uităm să importăm ambele hook-uri în fișier:

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

Dacă produsul de care avem nevoie nu este găsit (de exemplu, utilizatorul a introdus o adresă incorectă), atunci vom afișa informații despre aceasta pe ecran. În această etapă, codul pentru componentul ProductPage ar trebui să arate astfel:

export const ProductPage = () => { let params = useParams() const { productId } = params const product = useSelector((state) => state.products.find((product) => product.id === productId) ) if (!product) { return <p>Nu există un astfel de produs</p> } }

Și ne rămâne doar să afișăm datele obținute ale produsului în marcaj:

return ( <div> <h2>{product.name}</h2> <p>Descriere: {product.desc}</p> <p>Preț: {product.price}</p> <p>Cantitate: {product.amount}</p> </div> )

Deschideți aplicația voastră cu studenții. În folderul students creați fișierul StudentPage.jsx, în care veți obține și afișa informațiile despre studentul selectat.

Cu ajutorul hook-ului react-redux useSelector obțineți informațiile necesare despre student, după cum se arată în lecție.

Afișați în componentă informațiile obținute despre student pe ecran.

Română
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Folosim cookie pentru funcționarea site-ului, analiză și personalizare. Prelucrarea datelor are loc în conformitate cu Politica de confidențialitate.
acceptă toate configurează respinge