Next.js Referenz
init(options)
Importieren von @18ways/next/server.
import { init } from '@18ways/next/server';Allgemeine Optionen:
| Option | Typ | Notizen |
|---|---|---|
apiKey | Zeichenfolge | Erforderlich. |
basisLocale | Zeichenfolge | Quellgebiet für die App. |
lokal | Zeichenfolge | Optionale feste Gebietsschema-Überschreibung. |
akzeptierteLokalisierungen | string[] | Optionale explizite Gebietsschemas-Liste. |
persistLocaleCookie | boolean | ((Anfrage) => boolean) | Standard-Cookie-Richtlinie für Middleware und Änderungen der Client-Lokalisierung. |
cacheTtl | nummer | Cache-TTL für Adapteranfragen. |
fetcher | typeof fetch | Benutzerdefinierte Abrufimplementierung. |
pathRouting | WaysPathRoutingConfig | Locale-präfixierte Routen einbeziehen oder ausschließen. |
WaysRoot
Verwenden Sie WaysRoot in Ihrem App Router-Layout, damit der Adapter den Laufzeitstatus für die aktuelle Anfrage initialisieren kann.
htmlAttrs()
htmlAttrs() löst die aktuellen lang und dir Werte für das Dokumentelement auf.
generateWaysMetadata()
Verwenden Sie generateWaysMetadata() innerhalb von generateMetadata(), wenn Sie übersetzte Titel,
Beschreibungen und lokalbewusste kanonische oder alternative URLs wünschen.
waysMiddleware()
waysMiddleware() ist die Middleware-API zur Anforderungszeit, die von init() zurückgegeben wird. Sie löst den Locale-Zustand auf, wendet Locale-Cookies an und gibt die endgültige NextResponse zurück. Verwenden Sie transformRequestHeaders oder transformResponse, wenn Sie benutzerdefiniertes Verhalten benötigen.
init() Rückgabewert
init() gibt diese Felder zurück:
| Feld | Was es tut |
|---|---|
WaysRoot | Wurzel-Wrapper für App-Router-Layouts. |
htmlAttrs() | Löst lang und dir für die aktuelle Anfrage auf. |
generateWaysMetadata() | Erstellt lokalitätsbewusste Metadaten und kann Metadatastellen übersetzen. |
waysMiddleware() | Löst das lokalbewusste Middleware-Verhalten und gibt eine Antwort zurück. |
Kundenhelfer
Importieren von @18ways/next/client.
useLocale()
Lesen und ändern Sie die aktuelle Sprache. Dies ist der Hook, den Sie mit LanguageSwitcher oder Ihrer eigenen benutzerdefinierten Auswahl-UI kombinieren.
useUnlocalizedPathname()
Lese den aktuellen Pfadnamen ohne das Sprachpräfix.
useLocalizedHref()
Konvertiere einen internen href in den aktuellen lokalisierten href.
localizePathname()
Reiner Helfer zum Erstellen eines lokalisierten Pfads außerhalb von React.
stripLocalePrefix()
Reiner Helfer zum Entfernen eines Gebietsschema-Präfixes von einem Pfadnamen.
Path routing config
WaysPathRoutingConfig akzeptiert:
{
include?: Array<string | RegExp>;
exclude?: Array<string | RegExp>;
}Verwenden Sie es, wenn öffentliche URLs Locale-Präfixe enthalten sollen. Lassen Sie es weg, wenn Sie eine cookie-basierte oder header-basierte Locale-Auswahl ohne Pfadumschreibung wünschen.
Lower-level exports
Es gibt auch RSC- und Middleware-Exporte in @18ways/next/rsc und @18ways/next/server, aber für die meisten Apps ist die oben genannte init()-Schnittstelle die richtige Abstraktion.