⊗jsrtPmRtPR 47 of 47 menu

Роҳи бе роҳ дар React Router

Дар ин дарс мо як хуссияти дигари муфиди роҳи бе роҳро меомӯзем.

Шумо медонед, ки барои ҳар як объекти роҳ метавонед хуссияти errorElement-ро илова кунед ва ҳамчун қимати он унсуреро гузоред, ки мехоҳед ҳангоми рух додани хато намоиш дода шавад.

Вале агар errorElement барои ҳамаи роҳҳо якхела бошад? Метавонед, албатта, барои ҳар як як чизро такрор кунед, ё метавонед аз роҳи бе роҳ истифода баред, роҳҳои фарзандиеро, ки ба мо манфиат доранд, дар он бипечонед. Он вақт дар сурати рух додани хатодар яке аз онҳо, роҳи бе роҳи мо онҳоро мегирад ва errorElement-и худро намоиш медиҳад.

Ба файли main.jsx дароем ва ҳамаи роҳҳои фарзандӣ моро дар як роҳи бе роҳ бипечем, онҳоро фарзандҳои он кунем (дар навбати худ ин роҳ фарзанти решаӣ хоҳад шуд), хуссияти errorElement-ро низ ба он илова накунем:

const router = createBrowserRouter([ { path: '/', element: <Root />, errorElement: <ErrorPage404 />, loader: rootLoader, action: rootAction, children: [ { errorElement: <ErrorPage404 />, children: [ { index: true, element: <Index /> }, { path: 'products/:productId', element: <Product />, loader: productLoader, }, { path: 'products/:productId/edit', element: <EditProduct />, loader: editProductLoader, action: editAction, }, { path: 'products/:productId/delete', action: deleteAction, }, ], }, ], }, ]);

Акнун коркарди ин кодро чӣ гуна тафтиш кунем? Метавонед як сатр бо партофтани хаторо илова кунед (баъд ба ёд оред, ки онро ҳангоми тафтиш тоза кунед). Бигзор, ба мисол, онро ба сатри якуми функсияи action барои роҳи несткунии маҳсулот илова кунем, он вақт ҳангоми кӯшиши нест кардани маҳсулот мо хаторо мебинем:

export async function action({ params }) { throw new Error('хато'); await deleteProduct(params.productId); return redirect('/'); }

Акнун кӯшиш кунед, ки як маҳсулотро нест кунед.

Барномаеро, ки шумо дар вазифаҳо барои дарсҳои гузашта сохтаед, гиред. Бо истифода аз манбаъҳои дарс, роҳҳои фарзандӣи худро дар як роҳи бе роҳ бо хуссияти errorElement бипечонед ва тафтиш кунед, ки ин кор мекунад.

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