⊗jsnxPmLtNL 42 of 57 menu

Угњеждени распореди у NextJS-у

Као што знате, у фолдеру /app у фајлу /layout.jsx налази се главни распоред сајта.

По жељи, међутим, у угњежденим фолдерима можете креирати сопствене распореде. У том случају, садржај странице ће се прво уметнути у угњеждени распоред, а затим ће добијени резултат бити уметнут у главни распоред.

Хајде да испробамо у пракси. Нека наш главни распоред има следећи изглед:

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

Хајде да направимо још један, угњеждени распоред за сав садржај из фолдера /users:

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

Као што видите, у овом распореду не наводимо основне тагове странице, јер они већ постоје у нашем главном распореду сајта.

Хајде да направимо и фајл са садржајем за приказ корисника:

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

После ових манипулација наша фајлова структура ће изгледати овако:

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

Сада, ако се приступи одговарајућем URL-у, NextJS ће све саставити заједно и у прегледачу добићемо следећи коначни HTML код:

<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>

Направите на сајту одељак са корисницима и одељак са постовима. Направите у сваком одељку сопствени распоред, који ће наслеђивати од главног распореда сајта.

Српски
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Користимо колачиће за рад сајта, аналитику и персонализацију. Обрада података се врши у складу са Политиком приватности.
прихвати све подеси одбиј