⊗jsnxPmLtNL 42 of 57 menu

Beágyazott elrendezések a NextJS-ben

Mint tudjátok, a /app mappában a /layout.jsx fájlban található a weboldal fő elrendezése.

Azonban, ha szükséges, a beágyazott mappákban is létrehozhatunk saját elrendezéseket. Ebben az esetben az oldal tartalma először a beágyazott elrendezésbe kerül beillesztésre, majd a kapott eredmény kerül beillesztésre a fő elrendezésbe.

Próbáljuk ki a gyakorlatban. Tegyük fel, hogy a fő elrendezésünk a következő alakú:

export default function RootLayout({children}) { return ( <html lang="en"> <body> <header> header </header> <main> {children} </main> <footer> footer </footer> </body> </html> ); }

Készítsünk még egy, beágyazott elrendezést a /users mappában lévő összes tartalomhoz:

export default function UsersLayout({children}) { return ( <div className="info"> message for all users </div> <div className="content"> {children} </div> ); }

Amint látjátok, ebben az elrendezésben nem adjuk meg az alapvető oldalcímkéket, mivel ezek már megtalálhatók a weboldal fő elrendezésében.

Készítsük el a felhasználó megjelenítéséhez szükséges tartalmi fájlt is:

export default function User() { return <> <h1>User</h1> <p> user description </p> </>; }

Ezen manipulációk után a fájlstruktúránk így fog kinézni:

  • /app/
    • layout.jsx
    • /users/
      • layout.jsx
      • /show/
        • page.jsx

Most, ha a megfelelő URL-re navigálunk, a NextJS mindezt összeállítja, és a böngészőben a következő végső HTML kódot kapjuk:

<html lang="en"> <body> <header> header </header> <main> <div class="info"> message for all users </div> <h1>User</h1> <p> user description </p> </main> <footer> footer </footer> </body> </html>

Készítsd el a weboldalon a felhasználók szekcióját és a bejegyzések szekcióját. Mindegyik szekcióhoz készíts saját elrendezést, amely a weboldal fő elrendezésétől örököl.

Magyar
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
A weboldal működéséhez, elemzéshez és személyre szabáshoz sütiket használunk. Az adatfeldolgozás a Adatvédelmi irányelvek szerint történik.
összes elfogadása beállítás elutasítás