⊗jsrxPmRDInr 20 of 57 menu

Работа с данни в Redux

В предишния раздел ние реализирахме базова схема на работа на Redux и сега знаете основните принципи на работа на Redux приложение. В следващите уроци ще започнем да допълваме функционалността на нашето приложение с продукти и ще работим с данни.

Тъй като приложението ще се разраства с нови компоненти и маршрути, нека направим едно нещо с маршрутизацията. Отворете приложението с продукти, след това файла root.jsx. Импортирайте в него компонента Outlet, като същевременно изтриете редовете с импорт на ProductsList и NewProductForm:

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

Сега компонентът Root ще се показва по коренния път '/', а всички други компоненти по дъщерни в Outlet. За това малко ще поправим верстката на div #main-page за компонента Root:

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

Тук ще поставим Outlet вместо компонентите NewProductForm и ProductsList:

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

Формата за добавяне на продукти сега ще извеждаме в ProductsList. Нека отворим файла с този компонент и добавим импорт на формата:

import { NewProductForm } from './NewProductForm'

А сега добавяме компонента с формата точно преди списъка с продукти. Сега нашата верстка ще изглежда така:

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

Дописваме стил за класа products-list в index.css:

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

Остава само да направим промени в главния компонент App. Отваряме App.jsx и импортираме в него компонента ProductsList:

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

След това за нашия единствен маршрут, който е коренен, добавяме свойство children:

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

И записваме като стойност на това свойство първия дъщерен маршрут. Като път задаваме 'products'. Сега на този адрес ще се показва нашият списък с продукти ProductsList:

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

Стартираме нашето приложение и се убеждаваме, че не сме счупили нищо. В корена '/' виждаме само заглавие. А формата и списъкът с продукти са скрити на адрес '/products'.

Отворете вашето приложение със студенти. Във файла root.jsx заменете компонентите StudentsList и NewStudentForm с Outlet.

Нека сега формата за добавяне на студент се показва във вашия StudentsList.

Направете промени във вашия главен компонент App. Добавете към коренния маршрут дъщерен, с път '/students', на който ще се показва вашият StudentsList. Стартирайте приложението и се убедете, че всичко работи.

Български
AfrikaansAzərbaycanবাংলাБеларускаяČeštinaDanskDeutschΕλληνικά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
Ние използваме бисквитки за работата на сайта, анализ и персонализация. Обработката на данни се извършва в съответствие с Политика за поверителност.
приемам всички настройки отхвърляне