createNextMiddleware
createNextMiddleware() メソッドのAPIリファレンス
概要
createNextMiddleware は、Next.js で使用するミドルウェア関数を生成するユーティリティです。
これにより、Next.js アプリケーションで locale ごとに別々のルートを用意できます。
たとえば、フランス語のユーザーは /fr/landing に、英語のユーザーは /en/landing に案内されます。
このミドルウェアの使用方法については、i18n ルーティングガイドを参照してください。
リファレンス
Props
Prop
Type
説明
| Prop | 説明 | 
|---|---|
| pathConfig | アプリケーションのローカライズ済みパスを定義する入れ子のオブジェクト。 | 
| localeRouting | i18n ルーティングを有効/無効にするフラグ。 | 
| prefixDefaultLocale | defaultLocale からロケールのプレフィックスを除去するかどうかを切り替えるフラグ(例: /en/about→/about)。 | 
例
基本的な使い方
この関数とパスマッチャーをミドルウェアファイルに追加して呼び出すだけで、locale ルーティングを有効にできます。
import { createNextMiddleware } from 'gt-next/middleware'
export default createNextMiddleware();
export const config = {
  matcher: [
    /*
      * 以下で始まるパス以外のすべてのリクエストパスにマッチ:
      * - api (APIルート)
      * - _next (内部ファイル)
      * - 静的ファイル
      */
    "/((?!api|static|.*\\..*|_next).*)",
  ],
}ローカライズ済みのパス
ミドルウェアファイルの pathConfig オプションで、ローカライズ済みのパスを指定できます。
export default createNextMiddleware({
  pathConfig: {
    "/about": "/about",
    "/airplanes": {
      "zh": "/飞机",
    }
  },
});この仕組みの詳しい説明は、i18n ルーティングガイドをご覧ください。
既定のロケールのプレフィックスを削除する
prefixDefaultLocale オプションを false に設定すると、既定のロケールのプレフィックスを削除できます。
export default createNextMiddleware({
  prefixDefaultLocale: true,
});これが true の場合、すべてのパスに locale をプレフィックスとして付ける必要があります。
これを false(デフォルト)に設定すると、デフォルトの locale のみがパスから省かれます。
注意
- createNextMiddleware関数は、Next.js で使用するミドルウェア関数を生成するユーティリティ関数です。
次の手順
このガイドはどうでしたか?

