⊗jsrxPmTlsIRt 10 of 57 menu

Насби React Router дар барномаи Redux

Дар дарсҳои гузашта мо асбобҳои асосиро барои кор бо Redux насб кардем. Аксар вақт руй медиҳад, ки барнома ба роутер барои навигатсия дар саҳифаҳои веби худ ниёз дорад ва барномаи мо истисно нахоҳад буд. Барои ин мо китобхонаи React Router-ро насб мекунем.

Лоиҳаи худро кушода ва дар терминал фармони зеринро мезанем:

npm install react-router-dom

Як каме пеш рафта, мегӯям, ки барномаи Redux-и мо анъанатан ба маҳсулот бахшида шудааст, маълумоти дар бораи онҳо аз ҷониби баъзе фурӯшандаҳо гузошта мешавад. Аз ин рӯ, ҳоло мо каме компоненти асосии App-ро тағир медиҳем, ва инчунин ба барнома функсионал барои амалӣ намудани руткуниро илова мекунем.

Барои оғоз ба папкаи src, сипас ба app дохил шуда, дар инҷо файли root.jsx-ро эҷод мекунем. Ин решаи сомонаи мо хоҳад буд: дар чап мо меню дорем, ва дар рост - мундариҷа (то ҳол дар инҷо танҳо сарлавҳа мавҷуд аст):

function Root() { return ( <div id="main"> <div id="menu"> <nav> <a>Маҳсулот</a> <a>Фурӯшандагон</a> </nav> </div> <div id="main_page"> <h2>Ин аввалин барномаи Redux-и ман аст!</h2> <hr></hr> </div> </div> ) } export default Root

Ва компоненти App-ро мо тағир медиҳем. Барои оғоз мумкияти онро пурра нест мекунем. Баъд аз он ду функсияро барои рутер ва компоненти решаии худ Root-ро импорт мекунем:

import { createBrowserRouter, RouterProvider } from 'react-router-dom' import Root from './app/root'

Дар поён, пас аз импорт, рутер эҷод карда, як роҳи аввалро навишта, ба он Root-и худро ҳамчун унсури намоишдиҳанда интиқол медиҳем ва, мувофиқан, роҳро ба '/' таъин мекунем. Дар оянда дар App мо илова карда меравем ва дигар роҳҳои зарурӣ:

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

Дар поён коди функсияи App-ро менависем:

function App() { return <RouterProvider router={router} /> } export default App

Ҳама чиз. Оғоз мекунем. Дар бахши оянда мо компонентҳоро барои коркарди барномаи Redux амалӣ хоҳем кард.

Дар хотима каме зебоӣ илова карда, барои ин стилҳоро дар index.css менависем:

body { font-size: 24px; line-height: 1.5; } nav { display: flex; flex-direction: column; } ul { list-style: none; padding: 0; } h1, h2, h3 { margin: 0; } a { text-decoration: none; color: blue; cursor: pointer; } #main { display: flex; margin: 20px; } #menu { margin-right: 50px; padding-top: 50px; padding-right: 50px; border-right: 2px solid lightgray; font-weight: bold; }

React Router-ро ба барномаи худ илова кунед.

Бигзор барномаи шумо дар бораи донишҷӯён бошад, маълумоти дар бораи онҳоро муаллимон мегузоранд. Инро назардошт гирифта, компоненти решаии Root-ро эҷод кунед. Компоненти App-ро тавре ки дар дарс тавсиф шудааст, тағир диҳед.

Тоҷикӣ
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 истифода мебарем. Коркарди маълумот мувофиқи Сиёсати махфият сурат мегирад.
ҳамаро қабул кардан танзим кардан рад кардан