Časti webstránky v komponentoch v NextJS
V predchádzajúcej lekcii sme text častí webstránky písali priamo v súbore layoutu:
export default function RootLayout({children}) {
return (
<html lang="en">
<body>
<header>
header
</header>
<main>
{children}
</main>
<footer>
footer
</footer>
</body>
</html>
);
}
To však môže byť nepohodlné v prípade, keď časti webstránky obsahujú veľa kódu a textu. Preto sa časti webstránky zvyčajne presúvajú do samostatných súborov komponentov.
Presuňme napríklad header webstránky do samostatného komponentu. Vytvorme zodpovedajúci súbor:
export default function Header() {
return <>
header
</>;
}
Importujme náš komponent v súbore s layoutom:
import Header from '@/comp/header/header.jsx';
export default function RootLayout({children}) {
}
Vypíšme text nášho komponentu pomocou tagu s jeho menom:
import 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>
);
}
Vytvorte samostatné komponenty pre header a footer webstránky.