⊗jsrxPmRDInr 20 of 57 menu

Práce s daty v Redux

V předchozí sekci jsme implementovali základní schema práce Redux a nyní znáte hlavní principy fungování Redux aplikace. V následujících lekcích začneme doplňovat funkcionalitu naší aplikace s produkty a budeme pracovat s daty.

Protože aplikace bude obrůstat novými komponentami a trasami, udělejme s routováním jednu věc. Otevřete aplikaci s produkty, poté soubor root.jsx. Importujte do něj komponentu Outlet, přitom odstraňte řádky s importem ProductsList a NewProductForm:

import { Outlet } from 'react-router-dom'

Nyní komponenta Root se bude zobrazovat v kořenové cestě '/', a všechny ostatní komponenty v podřízených v Outlet. Pro to trochu opravíme verstu divu #main-page pro komponentu Root:

<div id="main-page"> <h2>My Products App</h2> <hr></hr> <NewProductForm /> <ProductsList /> </div>

Zde umístíme Outlet místo komponent NewProductForm a ProductsList:

<div id="main-page"> <h2>My Products App</h2> <hr></hr> <Outlet /> </div>

Formulář pro přidání produktů nyní budeme zobrazovat v ProductsList. Otevřeme soubor s touto komponentou a přidáme import formuláře:

import { NewProductForm } from './NewProductForm'

A nyní přidáme komponentu s formulářem přímo před seznam produktů. Nyní naše versta bude vypadat takto:

return ( <div> <NewProductForm /> <div> <h2>Products</h2> {dispProducts} </div> </div> )

Doplníme styl pro třídu products-list v index.css:

.products-list { display: flex; flex-direction: column; }

Zbývá nám pouze provést změny v hlavní komponentě App. Otevřeme App.jsx a importujme do ní komponentu ProductsList:

import { ProductsList } from './parts/products/ProductsList'

Poté pro naši zatím jedinou trasu, která je kořenovou, přidáme vlastnost children:

const router = createBrowserRouter([ { path: '/', element: <Root />, children: [] }, ])

A vypíšeme jako hodnotu této vlastnosti první podřízenou trasu. Jako cestu nastavíme jí 'products'. Nyní na této adrese se bude zobrazovat náš seznam s produkty ProductsList:

children: [ { path: '/products', element: <ProductsList />, }, ],

Spustíme naši aplikaci a přesvědčíme se, že jsme nic neporušili. V kořeni '/' vidíme pouze nadpis. A formulář a seznam produktů jsme schovali na adrese '/products'.

Otevřete vaši aplikaci se studenty. V souboru root.jsx nahraďte komponenty StudentsList a NewStudentForm na Outlet.

Nechť nyní formulář pro přidání studenta se zobrazuje u vás v StudentsList.

Proveďte změny ve vaší hlavní komponentě App. Přidejte ke kořenové trase podřízenou, s cestou '/students', podle které bude zobrazován váš StudentsList. Spusťte aplikaci a přesvědčte se, že vám 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