⊗jsrtPmRtULD 31 of 47 menu

React Router-те жүктеуішпен алынған деректерді пайдалану

Алдыңғы сабақта біз деректерді loader көмегімен қоймадан алдық. Бұл деректерді пайдалану үшін, біз useLoaderData хукін қолданамыз. root.jsx файлын ашып, хукті импортқа қосамыз:

import { Outlet, Link, useLoaderData } from 'react-router-dom';

Root функциясында енді біз деректерді products тұрақтысына аламыз және сол деректермен жұмыс істейміз. Егер бізде өнімдер болса, онда тізім көрсетіледі, егер жоқ болса, онда 'no products here ...' абзацында көрсетеміз. nav тегінде енді біз стандартты циклды қолданып алынған өнімдерді көрсетеміз. Әрбір элемент Link компонентіне оралып, әрқайсысының мекенжайы өзгеше болады (бұл туралы кейінірек сөйлесеміз). Сәйкесінше, егер өнімнің атауы болмаса, онда әдепкі бойынша 'Unnamed' көрсетіледі. Жоғарыда айтылғандарды ескере отырып, енді біздің Root функциясы үшін код осылай болады:

function Root() { const { products } = useLoaderData(); return ( <div id="main"> {products.length ? ( <nav> {products.map((product) => ( <Link key={product.id} to={`products/${product.id}`}> {product.name ? product.name : <i>Unnamed</i>} </Link> ))} </nav> ) : ( <p><i>no products here ...</i></p> )} <div id="product"> <Outlet /> </div> </div> ); }

Егер біз қолданбаны қазір қайта іске қоссақ және басты бетке кірсек, онда тек 'no products here ...' көреміз, себебі біз әлі ешбір өнімді қоймаға салған жоқпыз.

Алдыңғы сабақтардың тапсырмаларында жасаған қолданбаңызды алыңыз. Сабақ материалын пайдаланып, жүктеуіштен алынған студенттер туралы деректерді көрсетуді сабақта сипатталғандай қосыңыз.

Қазақ
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
Біз сайттың жұмысы, аналитика және персонализация үшін cookie файлдарын қолданамыз. Деректерді өңдеу Құпиялылық саясаты бойынша жүреді.
барлығын қабылдау баптау қабылдамау