Next.js
エンジニアのためのWebチートシート
Next.jsはVercelが開発したReactベースのフルスタックフレームワークです。 App Router、Server Components、データフェッチング、ルーティングなどの機能をチートシートにまとめました。
セットアップ
プロジェクト作成
create-next-appでプロジェクトを作成します。
ディレクトリ構成(App Router)
App Routerの基本的なディレクトリ構成です。
ルーティング
ファイルベースルーティング
ファイルの配置がそのままURLになります。
動的ルート
角括弧でパラメータを受け取る動的ルートです。
Link & ナビゲーション
Linkコンポーネントとプログラム的なナビゲーションです。
データ取得
Server Component
デフォルトでサーバーコンポーネントです。サーバー側でのみ実行されます。
Client Component
'use client'を宣言するとクライアントコンポーネントになります。
Loading & Error
loading.tsxとerror.tsxで状態を自動的に処理します。
レンダリング
SSR / SSG
Server-Side Rendering と Static Site Generation です。
ISR(増分静的再生成)
revalidateを指定して一定時間後にページを再生成します。
API & Server Actions
Route Handler
route.tsファイルでAPIエンドポイントを作成します。
Server Actions
'use server'でサーバー側の関数を直接呼び出せます。
組み込みコンポーネント
Image コンポーネント
画像の最適化を自動で行うコンポーネントです。
Metadata API
SEOメタデータをエクスポートで設定します。
最適化
Font 最適化
next/fontでフォントを最適化して読み込みます。
ミドルウェア & 環境変数
ミドルウェア
リクエスト処理前にロジックを実行します。
環境変数
環境変数の設定方法です。