React Router
Create React App sahifalararo marshrutlashni o'z ichiga olmaydi.
React Router eng mashhur yechim hisoblanadi.
React Router-ni Qo'shish
React Router-ni ilovangizga qo'shish uchun terminalda ilovaning asosiy katalogida quyidagi buyruqni ishga tushiring:
Eslatma
Ushbu qo'llanma React Router v6 versiyasidan foydalanadi.
Agar siz v5 versiyasidan yangilayotgan bo'lsangiz, @latest
flagini qo'shishingiz kerak:
Papka Tuzilishi
Bir nechta sahifa yo'llari bo'lgan ilovani yaratish uchun avval fayl tuzilishi bilan boshlaymiz.
src
papkasi ichida pages
nomli papka yaratamiz va bir nechta fayllar qo'shamiz:
Har bir fayl juda oddiy React komponentini o'z ichiga oladi.
Asosiy Foydalanish
Endi index.js
faylimizda Router-dan foydalanamiz.
Misol: URL asosida sahifalarga yo'naltirish uchun React Router-dan foydalaning:
Misolni Tushuntirish
Avvalo, biz <BrowserRouter>
bilan kontentimizni o'rab olamiz.
Keyin biz <Routes>
ni belgilaymiz. Ilovada bir nechta <Routes>
bo'lishi mumkin. Bizning asosiy misolimiz faqat bittasini ishlatadi.
<Route>
lar ichma-ich bo'lishi mumkin. Birinchi <Route>
ning yo'li /
bo'lib, Layout
komponentini render qiladi.
Ichki <Route>
lar ota yo'lni meros qilib oladi va unga qo'shiladi. Shuning uchun blogs
yo'li ota yo'l bilan birlashtiriladi va /blogs
bo'ladi.
Home
komponenti yo'li yo'q, lekin index
atributiga ega. Bu yo'lni ota yo'l uchun standart yo'l sifatida belgilaydi, ya'ni /
.
*
yo'lini belgilash har qanday aniqlanmagan URL-lar uchun "catch-all" (hammasini qamrab oluvchi) sifatida ishlaydi. Bu 404 xato sahifasi uchun juda yaxshi.
Sahifalar / Komponentlar
Layout
komponenti <Outlet>
va <Link>
elementlariga ega.
<Outlet>
joriy tanlangan yo'ni render qiladi.
<Link>
URL-ni belgilash va ko'rish tarixini saqlash uchun ishlatiladi.
Ichki yo'lga havola qilish uchun har doim <Link>
dan foydalanamiz, <a href="">
dan emas.
"Layout yo'li" - bu barcha sahifalarda umumiy kontentni qo'shadigan bo'linma, masalan, navigatsiya menyusi.
Layout.js:
Home.js:
Blogs.js:
Contact.js:
NoPage.js: