NextJSにおけるコンポーネント内のウェブサイトパーツ
前回のレッスンでは、レイアウトファイルに ウェブサイトパーツのテキストを直接記述しました:
export default function RootLayout({children}) {
return (
<html lang="en">
<body>
<header>
header
</header>
<main>
{children}
</main>
<footer>
footer
</footer>
</body>
</html>
);
}
しかし、これはウェブサイトのパーツに多くのコードやテキストが 含まれている場合、不便である可能性があります。 そのため、通常はウェブサイトのパーツを 個別のコンポーネントファイルに分割します。
例として、サイトのヘッダーを 別のコンポーネントに分割してみましょう。 対応するファイルを作成します:
export default function Header() {
return <>
header
</>;
}
レイアウトファイルでコンポーネントをインポートします:
import Header from '@/comp/header/header.jsx';
export default function RootLayout({children}) {
}
コンポーネント名のタグを使用して、 コンポーネントのテキストを出力しましょう:
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>
);
}
サイトのヘッダーとフッターの 個別のコンポーネントを作成してください。