Stellen Sie Ihre Frage und erhalten Sie einen Resümee des Dokuments, indem Sie diese Seite und den AI-Anbieter Ihrer Wahl referenzieren
Durch die Integration des Intlayer MCP-Servers in Ihren bevorzugten AI-Assistenten können Sie alle Dokumente direkt von ChatGPT, DeepSeek, Cursor, VSCode usw. abrufen.
Dokumentation des MCP-Servers ansehenDer Inhalt dieser Seite wurde mit einer KI übersetzt.
Den englischen Originaltext ansehenWenn Sie eine Idee haben, um diese Dokumentation zu verbessern, zögern Sie bitte nicht, durch das Einreichen eines Pull-Requests auf GitHub beizutragen.
GitHub-Link zur DokumentationMarkdown des Dokuments in die Zwischenablage kopieren
Dokumentation: t Funktion in next-intlayer
Die t-Funktion im next-intlayer-Paket ist ein grundlegendes Werkzeug für die Inline-Internationalisierung innerhalb Ihrer Next.js-Anwendung. Sie ermöglicht es Ihnen, Übersetzungen direkt in Ihren Komponenten zu definieren, wodurch es einfach wird, lokalisierten Inhalt basierend auf der aktuellen Sprache anzuzeigen.
Überblick
Die t-Funktion wird verwendet, um Übersetzungen für verschiedene Sprachen direkt in Ihren Komponenten bereitzustellen. Indem Sie ein Objekt übergeben, das Übersetzungen für jede unterstützte Sprache enthält, gibt t die passende Übersetzung basierend auf dem aktuellen Sprachkontext in Ihrer Next.js-Anwendung zurück.
Hauptmerkmale
- Inline-Übersetzungen: Ideal für schnelle, inline-Texte, die keine separate Inhaltsdeklaration erfordern.
- Automatische Sprachauswahl: Gibt automatisch die Übersetzung zurück, die der aktuellen Sprache entspricht.
- TypeScript-Unterstützung: Bietet Typsicherheit und Autovervollständigung bei Verwendung mit TypeScript.
- Einfache Integration: Funktioniert nahtlos sowohl in Client- als auch in Server-Komponenten in Next.js.
Funktionssignatur
Kopieren Sie den Code in die Zwischenablage
t<T extends string>(content: Record<LocalesValues, T>, locale?: Locales): string
Parameter
- translations: Ein Objekt, bei dem die Schlüssel Sprachcodes (z. B. en, fr, es) sind und die Werte die entsprechenden übersetzten Strings.
Rückgabewert
- Ein String, der den übersetzten Inhalt für die aktuelle Sprache repräsentiert.
Anwendungsbeispiele
Verwendung von t in einer Client-Komponente
Stellen Sie sicher, dass Sie die Direktive 'use client'; am Anfang Ihrer Komponenten-Datei einfügen, wenn Sie t in einer Client-Komponente verwenden.
Kopieren Sie den Code in die Zwischenablage
"use client";import type { FC } from "react";import { t } from "next-intlayer";export const ClientComponentExample: FC = () => ( <p> {t({ en: "This is the content of a client component example", fr: "Ceci est le contenu d'un exemple de composant client", es: "Este es el contenido d un ejemplo de componente cliente", })} </p>);
Verwendung von t in einer Server-Komponente
Kopieren Sie den Code in die Zwischenablage
import type { FC } from "react";import { t } from "next-intlayer/server";export const ServerComponentExample: FC = () => ( <p> {t({ en: "This is the content of a server component example", fr: "Ceci est le contenu d'un exemple de composant serveur", es: "Este es el contenido de un ejemplo de componente servidor", })} </p>);
Inline-Übersetzungen in Attributen
Die Funktion t ist besonders nützlich für Inline-Übersetzungen in JSX-Attributen. Beim Lokalisieren von Attributen wie alt, title, href oder aria-label können Sie t direkt innerhalb des Attributs verwenden.
Kopieren Sie den Code in die Zwischenablage
<button aria-label={t({ en: "Submit", fr: "Soumettre", es: "Enviar", })}> {t({ en: "Submit", fr: "Soumettre", es: "Enviar", })} <img src="/path/to/image" alt={t({ en: "A beautiful scenery", fr: "Un beau paysage", es: "Un hermoso paisaje", })} /></button>
Fortgeschrittene Themen
TypeScript-Integration
Die Funktion t ist typensicher, wenn sie mit TypeScript verwendet wird, und stellt sicher, dass alle erforderlichen Sprachversionen bereitgestellt werden.
Kopieren Sie den Code in die Zwischenablage
import type { IConfigLocales } from "intlayer";import { t } from "next-intlayer";const translations: IConfigLocales<string> = { en: "Welcome", fr: "Bienvenue", es: "Bienvenido",};const greeting = t(translations);
Lokalerkennung und Kontext
In next-intlayer wird die aktuelle Locale über Kontext-Provider verwaltet: IntlayerClientProvider und IntlayerServerProvider. Stellen Sie sicher, dass diese Provider Ihre Komponenten umschließen und die locale-Eigenschaft korrekt übergeben wird.
Beispiel:
Kopieren Sie den Code in die Zwischenablage
import type { FC } from "react";import type { Locales } from "intlayer";import { IntlayerClientProvider } from "next-intlayer";import { IntlayerServerProvider } from "next-intlayer/server";const Page: FC<{ locale: Locales }> = ({ locale }) => ( <IntlayerServerProvider locale={locale}> <IntlayerClientProvider locale={locale}> {/* Ihre Komponenten hier */} </IntlayerClientProvider> </IntlayerServerProvider>);
Häufige Fehler und Problemlösungen
t Gibt Undefined oder falsche Übersetzung zurück
- Ursache: Die aktuelle Locale ist nicht korrekt gesetzt oder die Übersetzung für die aktuelle Locale fehlt.
- Lösung:
- Überprüfen Sie, ob der IntlayerClientProvider oder IntlayerServerProvider korrekt mit der passenden locale eingerichtet ist.
- Stellen Sie sicher, dass Ihr Übersetzungsobjekt alle notwendigen Locales enthält.
Fehlende Übersetzungen in TypeScript
- Ursache: Das Übersetzungsobjekt erfüllt nicht die erforderlichen Locales, was zu TypeScript-Fehlern führt.
- Lösung: Verwenden Sie den Typ IConfigLocales, um die Vollständigkeit Ihrer Übersetzungen sicherzustellen.
Kopieren Sie den Code in die Zwischenablage
const translations: IConfigLocales<string> = { en: "Text", fr: "Texte", // es: 'Texto', // Fehlendes 'es' verursacht einen TypeScript-Fehler [!code error]};const text = t(translations);
Tipps für eine effektive Nutzung
- Verwenden Sie t für einfache Inline-Übersetzungen: Ideal, um kleine Textstücke direkt in Ihren Komponenten zu übersetzen.
- Bevorzugen Sie useIntlayer für strukturierte Inhalte: Für komplexere Übersetzungen und die Wiederverwendung von Inhalten definieren Sie Inhalte in Deklarationsdateien und verwenden Sie useIntlayer.
- Konsistente Bereitstellung der Locale: Stellen Sie sicher, dass Ihre Locale in Ihrer gesamten Anwendung durch die entsprechenden Provider konsistent bereitgestellt wird.
- Nutzen Sie TypeScript: Verwenden Sie TypeScript-Typen, um fehlende Übersetzungen zu erkennen und Typensicherheit zu gewährleisten.
Fazit
Die t-Funktion in next-intlayer ist ein leistungsstarkes und praktisches Werkzeug zur Verwaltung von Inline-Übersetzungen in Ihren Next.js-Anwendungen. Durch eine effektive Integration verbessern Sie die Internationalisierungsfähigkeiten Ihrer App und bieten Nutzern weltweit ein besseres Erlebnis.
Für eine detailliertere Nutzung und erweiterte Funktionen verweisen wir auf die next-intlayer Dokumentation.
Hinweis: Denken Sie daran, Ihren IntlayerClientProvider und IntlayerServerProvider korrekt einzurichten, um sicherzustellen, dass die aktuelle Locale korrekt an Ihre Komponenten weitergegeben wird. Dies ist entscheidend dafür, dass die t-Funktion die richtigen Übersetzungen zurückgibt.
Dokumentationshistorie
- 5.5.10 - 2025-06-29: Initiale Historie