⊗jsrtPmRtNR 27 of 47 menu

Ενσωματωμένες Διαδρομές στο React Router

Σε αυτό το μάθημα, θα γνωριστούμε με τις ενσωματωμένες διαδρομές. Ξεκινήστε την εφαρμογή που φτιάξαμε στο προηγούμενο μάθημα. Κάνοντας κλικ στους συνδέσμους, εμφανιζόμαστε σε μια ξεχωριστή σελίδα με το προϊόν. Ας υποθέσουμε ότι δεν μας βολεύει να συμβαίνει αυτό, και θα θέλαμε, η λίστα με τα προϊόντα και η σελίδα του προϊόντος να εμφανίζονται δίπλα, στην ίδια οθόνη για μεγαλύτερη σαφήνεια. Ας το κάνουμε έτσι.

Για αυτό, ας ανοίξουμε το αρχείο main.jsx και απλά ας κάνουμε τη διαδρομή μας για τη σελίδα του προϊόντος θυγατρική διαδρομή της κύριας διαδρομής ή, με άλλα λόγία, "να την ενσωματώσουμε" στην κύρια διαδρομή. Για αυτό, θα χρησιμοποιήσουμε άλλη μια ιδιότητα του αντικειμένου διαδρομής children:

const router = createBrowserRouter([ { path: '/', element: <Root />, errorElement: <ErrorPage404 />, children: [ { path: 'products/:productId', element: <Product />, }, ], }, ]);

Κάνουμε κλικ ξανά στους συνδέσμους, αλλά δεξιά από τη λίστα προϊόντων δεν βλέπουμε τίποτα. Επειδή δεν είπαμε στην κύρια διαδρομή πού θέλουμε να εμφανίσουμε τις θυγατρικές της διαδρομές.

Ακριβώς για την εμφάνιση των στοιχείων των θυγατρικών διαδρομών στο γονικό, θα μας βοηθήσει το component Outlet. Ας το εισάγουμε από την βιβλιοθήκη στο αρχείο για την κύρια διαδρομή:

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

Μετά, ας το τυλίξουμε σε ένα div #product και ας το προσθέσουμε στο layout για την κύρια διαδρομή στο τέλος της σήμανσης μετά από το κλείσιμο της ετικέτας nav, και ολόκληρη την κατασκευή θα την τυλίξουμε ακόμα σε ένα div #main:

return ( <div id="main"> <nav> <a href={`/products/1`}>Product1</a> <a href={`/products/2`}>Product2</a> </nav> <div id="product"> <Outlet /> </div> </div> );

Κάνοντας κλικ στους συνδέσμους, τώρα βλέπουμε και τη λίστα προϊόντων και τη σελίδα του προϊόντος.

Ας προσθέσουμε λίγα στυλ στο index.css:

h1, h2 { margin: 0; } div#main { display: flex; margin: 20px; } div#product { margin-left: 40px; }

Πάρτε την εφαρμογή, που δημιουργήσατε στο άσκημα του προηγούμενου μαθήματος. Χρησιμοποιώντας τα υλικά του μαθήματος, κάντε τη διαδρομή για τη σελίδα του μαθητή ενσωματωμένη στην κύρια.

Και τώρα κάντε το έτσι, ώστε με κλικ στους συνδέσμους στην οθόνη να εμφανίζεται τόσο η λίστα των μαθητών όσο και η σελίδα του μαθητή.

Ελληνικά
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschEnglishEspañ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 για τη λειτουργία του ιστότοπου, την ανάλυση και την εξατομίκευση. Η επεξεργασία των δεδομένων γίνεται σύμφωνα με την Πολιτική Απορρήτου.
αποδοχή όλων ρύθμιση απόρριψη