カテゴリ: Next.js 更新日: 2026/01/21

Next.js App Routerとは?Next.js 13以降の新標準を初心者向けにやさしく解説

Next.js App Routerとは?Next.js 13以降の新標準を理解しよう
Next.js App Routerとは?Next.js 13以降の新標準を理解しよう

先生と生徒の会話形式で理解しよう

生徒

「Next.jsって聞いたことはあるんですが、App Routerって何ですか?」

先生

「Next.js 13から新しく使われるようになった、画面の作り方やページ構成の新しい考え方ですよ。」

生徒

「今までのやり方と何が違うんですか?」

先生

「では、App Routerの基本から順番に見ていきましょう。」

1. Next.jsとは何かを超かんたんに理解しよう

1. Next.jsとは何かを超かんたんに理解しよう
1. Next.jsとは何かを超かんたんに理解しよう

Next.js(ネクストジェイエス)とは、WebサイトやWebアプリを作るための道具です。 普通のHTMLだけでは、画面を切り替えたり、データを表示したりするのが大変ですが、 Next.jsを使うと、それらを効率よく作れます。

特にNext.jsは「ページ表示が速い」「検索エンジンに見つかりやすい」「大きなサイトでも管理しやすい」 といった特徴があり、初心者からプロまで幅広く使われています。

2. App Routerとは?新しいページ構成の考え方

2. App Routerとは?新しいページ構成の考え方
2. App Routerとは?新しいページ構成の考え方

App Router(アップルーター)とは、Next.js 13以降で標準になったページの作り方です。 フォルダの構成がそのまま画面の構成になる、というとても分かりやすい仕組みです。

たとえば、appフォルダの中に「page.js」というファイルを作ると、 それがそのままWebページになります。 フォルダ=道、ファイル=家、というイメージをすると理解しやすいです。

3. appフォルダとpage.jsの基本ルール

3. appフォルダとpage.jsの基本ルール
3. appフォルダとpage.jsの基本ルール

App Routerでは、必ず「app」フォルダを使います。 その中にある「page.js」が画面として表示されます。


export default function Page() {
  return <h1>はじめてのNext.js App Router</h1>;
}
(画面に「はじめてのNext.js App Router」と表示されます)

このように、とてもシンプルな書き方でページが作れます。 難しい設定をしなくても、表示できるのがApp Routerの魅力です。

4. レイアウト機能で共通デザインを作る

4. レイアウト機能で共通デザインを作る
4. レイアウト機能で共通デザインを作る

App Routerでは「layout.js」を使うことで、 ヘッダーやフッターなどの共通部分をまとめて管理できます。 これは、毎回同じHTMLを書く手間を減らすための仕組みです。


export default function Layout({ children }) {
  return (
    <div>
      <header>共通ヘッダー</header>
      {children}
      <footer>共通フッター</footer>
    </div>
  );
}
(すべてのページでヘッダーとフッターが表示されます)

5. Server Componentという考え方

5. Server Componentという考え方
5. Server Componentという考え方

App Routerでは、画面を表示する処理の多くをサーバー側で行います。 これをServer Component(サーバーコンポーネント)と呼びます。

サーバー側で処理することで、画面表示が速くなり、 ユーザーのパソコンへの負担も軽くなります。 特別な設定をしなくても、これが自動で使われる点が特徴です。

6. Client Componentが必要な場面

6. Client Componentが必要な場面
6. Client Componentが必要な場面

ボタンをクリックしたときに画面が変わるなど、 ユーザー操作が必要な場合はClient Component(クライアントコンポーネント)を使います。


"use client";

import { useState } from "react";

export default function Counter() {
  const [count, setCount] = useState(0);

  return (
    <button onClick={() => setCount(count + 1)}>
      {count} 回クリック
    </button>
  );
}
(ボタンを押すたびに数字が増えて表示されます)

7. App Routerを使うメリット

7. App Routerを使うメリット
7. App Routerを使うメリット

App Routerの一番のメリットは、構造が直感的で分かりやすいことです。 フォルダを見るだけで、どんな画面があるのか理解できます。

また、表示速度が速くなりやすく、管理もしやすいため、 小さなサイトから大きなサービスまで幅広く対応できます。

8. 初心者がつまずきやすいポイント

8. 初心者がつまずきやすいポイント
8. 初心者がつまずきやすいポイント

最初は「Server Component」と「Client Component」の違いが分かりにくいかもしれません。 ですが、「操作が必要ならClient、それ以外はServer」と覚えるだけで十分です。

App Routerは新しい仕組みですが、慣れるととても使いやすく、 Next.jsの理解も一気に深まります。

カテゴリの一覧へ
新着記事
New1
React
Reactのカスタムフックでキャッシュ機能を実装する方法を解説!初心者でもわかるデータ管理
New2
Next.js
Next.js App Routerでlayout.tsxを使う方法を完全ガイド!初心者でもわかるUIの共有
New3
React
TypeScriptでStateを型定義する方法を徹底解説!初心者でもわかるReactとTypeScript入門
New4
Next.js
Next.jsとNext.js 12以前の違いをわかりやすく解説!pagesからapp時代への大きな変化
人気記事
No.1
Java&Spring記事人気No1
React
ReactのPropsを使ってコンポーネントの表示を動的に切り替える方法を解説!初心者でもわかるReact入門
No.2
Java&Spring記事人気No2
React
ViteでReact開発環境を構築する手順を完全ガイド!初心者でもできるReactの環境構築
No.3
Java&Spring記事人気No3
React
Reactとは?初心者でもわかるReact.jsの基本概念と特徴をやさしく解説
No.4
Java&Spring記事人気No4
React
ReactでonChangeイベントを使ってフォーム入力値を管理する方法を初心者向けに解説
No.5
Java&Spring記事人気No5
React
ReactとTypeScriptの環境構築をやさしく解説!Viteとtsconfigの設定も丁寧に紹介
No.6
Java&Spring記事人気No6
React
スマホ対応!Reactでレスポンシブデザイン対応のコンポーネント設計を初心者向けに解説
No.7
Java&Spring記事人気No7
React
Reactのチェックボックス入力を完全解説!初心者でもわかるReactフォーム処理
No.8
Java&Spring記事人気No8
React
ReactのuseStateとuseEffectでよくあるエラーと解決方法ガイド!初心者でもわかるReactフック