Next.js リファレンス

init(options)

からインポート@18ways/next/server

ts
インポート { 初期化 } から '@18ways/next/server';

一般的なオプション:

オプションタイプノート
apiKey文字列必須です。
ベースロケール文字列アプリのソースロケール。
ロケール文字列オプションの固定ロケールオーバーライド。
受け入れられたロケール文字列の配列オプションの明示的ロケールリスト。
ロケールクッキーを保持するブール値 | ((リクエスト) => ブール値)ミドルウェアおよびクライアントのロケール変更に対するデフォルトのロケールクッキーポリシー。
キャッシュの有効期限番号アダプタリクエストのキャッシュTTL。
フェッチャーfetchの型カスタムフェッチ実装。
パスルーティングWaysPathRoutingConfigロケール接頭辞付きルートを含めるか除外するか。

WaysRoot

使用するWaysRootをあなたのアプリルーターのレイアウトに組み込むことで、アダプターが現在のリクエストのためにランタイム状態をシードできます。

htmlAttrs()

htmlAttrs()は現在のlangdirの値を文書要素に対して解決します。

generateWaysMetadata()

使用するgenerateWaysMetadata() の中でgenerateMetadata() を使用してください。翻訳されたタイトル、 説明、およびロケールに応じた正規または代替URLが必要なときに。

waysMiddleware()

waysMiddleware()は、から返されるリクエスト時ミドルウェアAPIです。init()。これはロケール状態を解決し、ロケールクッキーを適用し、最終的なNextResponseを返します。使用するには、transformRequestHeadersまたはtransformResponseが必要なカスタム動作を行うときに。

init() 戻り値

init()はこれらのフィールドを返します:

フィールドそれが何をするのか
WaysRootアプリルーターのレイアウト用のルートラッパー。
htmlAttrs()解決します langdir の現在のリクエストに対して。
generateWaysMetadata()ロケールに対応したメタデータを構築し、メタデータ文字列を翻訳できます。
waysMiddleware()ロケールに応じたミドルウェアの動作を解決し、レスポンスを返します。

クライアントヘルパー

からインポート@18ways/next/client

useLocale()

現在のロケールを読み取り、変更します。これは、あなたがペアにするフックです。LanguageSwitcherまたは独自のカスタムセレクターUIです。

useUnlocalizedPathname()

ロケールプレフィックスなしで現在のパス名を読み取ります。

useLocalizedHref()

内部のhrefを現在のロケールに対応したhrefに変換します。

localizePathname()

Reactの外でローカライズされたパス名を構築するための純粋なヘルパー。

stripLocalePrefix()

パス名からロケールプレフィックスを削除するための純粋なヘルパー。

Path routing config

WaysPathRoutingConfig は受け入れます:

ts
{
  含む?: 配列<文字列 | 正規表現>;
  除外?: 配列<文字列 | 正規表現>;
}

公開URLにロケールプレフィックスを付ける必要がある場合に使用します。パスの書き換えなしでクッキーまたはヘッダーに基づくロケール選択を希望する場合は、省略してください。

Lower-level exports

また、RSCおよびミドルウェアのエクスポートもあります@18ways/next/rsc@18ways/next/server, しかし ほとんどのアプリにとってはinit()上記のサーフェスが適切な抽象化です。