本プロジェクトでは、
SSR(サーバーサイドレンダリング)を中心に構成されており、
クライアントコンポーネントと組み合わせた構成になっている。
👉 「SSR + クライアント」で高速表示と操作性を両立している
app/page.tsx(サーバーコンポーネント / SSR)
└── ClientApp.tsx(クライアント)
├── TaskForm.tsx
├── TaskList.tsx
├── Chart.tsx
└── DashBoard.tsx
export default async function Page() {
const res = await fetch(`${process.env.NEXT_PUBLIC_BASE_URL}/api/tasks`, {
cache: "no-store",
});
}
| 項目 | 内容 |
|---|---|
| async function | サーバーでデータ取得してからHTML生成 |
| cache: “no-store” | 毎回最新データ取得 → 動的SSR |
| “use client”なし | サーバーコンポーネント |
① ユーザーアクセス
② サーバーでDBからデータ取得
③ HTML生成
④ ブラウザに返却