Pjesët e faqes në komponentë në NextJS

Në mësimin e mëparshëm ne shkruajtëm tekstin e pjesëve të faqes direkt në skedarin e layout-it:

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

Kjo, megjithatë, mund të jetë e papërshtatshme në rastin kur pjesët e faqes përmbajnë shumë kod dhe tekst. Prandaj zakonisht pjesët e faqes vihen në skedarë të veçantë të komponentëve.

Le të bëjmë një shembull dhe të vendosim header-in e faqes në një komponent të veçantë. Le të krijojmë skedarin përkatës:

comp/header/header.jsxexport default function Header() {
  return <>
    header
  </>;
}

Le ta importojmë komponentin tonë në skedarin me layout:

app/layout.jsximport Header from '@/comp/header/header.jsx';

export default function RootLayout({children}) {
  
}

Le të shfaqim tekstin e komponentit tonë duke përdorur tag-un me emrin e tij:

app/layout.jsximport Header from '@/comp/header/header.jsx';

export default function RootLayout({children}) {
  return (
    <html lang="en">
      <body>
        <header>
          <Header />
        </header>
        <main>
          {children}
        </main>
        <footer>
          footer
        </footer>
      </body>
    </html>
  );
}
Задание 1

Krijoni komponentë të veçantë për header-in dhe footer-in e faqes.