初めてのレイアウトを作成する
ここで学ぶことは...
- 共通要素をページレイアウトにリファクタリングする
- Astroの
<slot />
要素を使用して、ページの内容をレイアウト内に配置する - ページ固有の値をレイアウトにpropsとして渡す
まだいくつかのAstroコンポーネントが各ページで繰り返しレンダリングされています。さらにリファクタリングを進めて、共通のページレイアウトを作成しましょう!
初めてのレイアウトコンポーネントを作成する
セクションタイトル: 初めてのレイアウトコンポーネントを作成する-
src/layouts/BaseLayout.astro
に新しいファイルを作成します。(まず新しいlayouts
フォルダを作成する必要があります。) -
index.astro
のすべてのコンテンツを新しいファイルBaseLayout.astro
にコピーします。src/layouts/BaseLayout.astro ---import Header from '../components/Header.astro';import Footer from '../components/Footer.astro';import '../styles/global.css';const pageTitle = "ホームページ";---<html lang="ja"><head><meta charset="utf-8" /><link rel="icon" type="image/svg+xml" href="/favicon.svg" /><meta name="viewport" content="width=device-width" /><meta name="generator" content={Astro.generator} /><title>{pageTitle}</title></head><body><Header /><h1>{pageTitle}</h1><Footer /><script>import "../scripts/menu.js";</script></body></html>