StartseiteSandboxShowcaseAppDokumentBlog
    • EnglishEnglisch
      EN
    • русскийRussisch
      RU
    • 日本語Japanisch
      JA
    • françaisFranzösisch
      FR
    • 한국어Koreanisch
      KO
    • 中文Chinesisch
      ZH
    • españolSpanisch
      ES
    • DeutschDeutsch
      DE
    • العربيةArabisch
      AR
    • italianoItalienisch
      IT
    • British EnglishEnglisch (Vereinigtes Königreich)
      EN-GB
    • portuguêsPortugiesisch
      PT
    • हिन्दीHindi
      HI
    • TürkçeTürkisch
      TR
    • polskiPolnisch
      PL
    • IndonesiaIndonesisch
      ID
    • Tiếng ViệtVietnamesisch
      VI
    • українськаUkrainisch
      UK
    /
    Dokumentation nach Framework filtern
    Alt+←
    Warum Intlayer?
    Anfangen
    Konzept
    • Wie Intlayer funktioniert
    • Konfiguration
    • TestFillBuildWatchExtractLoginPushPullConfigurationListVersionEditorLiveDebugDoc ReviewDoc TranslateSDK
    • Visueller Editor
    • CMS
    • CI/CD-Integration
    • ÜbersetzungPluralAufzählungBedingungGeschlechtEinfügungDateiVerschachtelungMarkdownHTMLFunktionsabruf
    • Datei pro Locale
    • Compiler
    • Automatisches Ausfüllen
    • Testen
    • Bundle-Optimierung
    Umwelt
    • Next.js 14 und App Router
      Next.js 15
      Next.js ohne Locale URL
      Next.js und Page Router
      Compiler
    • Tanstack Start Solid
    • Astro und React
      Astro und Svelte
      Astro und Vue
      Astro und Solid
      Astro und Preact
      Astro und Lit
      Astro und Vanilla JS
    • React Router v7
      React Router v7 (fs-routes)
      Compiler
    • Nuxt und Vue
    • Vite und Solid
    • SvelteKit
    • Vite und Preact
    • Vite und Vanilla JS
    • Vite und Lit
    • Angular 19 (Webpack)
      Analog
    • React CRA
    • React Native und Expo
    • Express.js
      NestJS
      Fastify
      Hono
      Adonis
    • Lynx und React
    Plugins
    • JSON
    • gettext (.po)
    VS Code-Erweiterung
    Agent
    • MCP-Server
    • Agenten-Fähigkeiten
    Versionen
    • v8
    • v7
    • v6
    Benchmark
    • Next.js
    • TanStack
    • Vue
    • Solid
    • Svelte
    Blog
    Frage stellen
    1. Documentation
    2. Umwelt
    3. Next.js
    4. Compiler
    Erstellung:2026-01-10Letzte Aktualisierung:2026-05-06
    Anwendungsvorlage auf GitHub ansehen

    Für diese Seite ist eine Anwendungsvorlage verfügbar.

    Video-Tutorial ansehen

    Für diese Seite ist ein Video-Tutorial verfügbar.

    Referenzieren Sie diese Dokumentation mit Ihrem bevorzugten AI-Assistenten
    ChatGPT
    Claude
    DeepSeek
    Google AI mode
    Gemini
    Perplexity
    Mistral
    Grok

    Stellen Sie Ihre Frage und erhalten Sie einen Resümee des Dokuments, indem Sie diese Seite und den AI-Anbieter Ihrer Wahl referenzieren

    Versionshistorie

    1. "Aktualisieren der Solid useIntlayer API-Nutzung auf direkten Eigenschaftszugriff"
      v8.9.04.5.2026
    2. "Update compiler options, add FilePathPattern support"
      v8.2.09.3.2026
    3. "Erstveröffentlichung"
      v8.1.623.2.2026

    Der Inhalt dieser Seite wurde mit einer KI übersetzt.

    Den englischen Originaltext ansehen
    Diese Dokumentation bearbeiten

    Wenn 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 Dokumentation
    Kopieren

    Markdown des Dokuments in die Zwischenablage kopieren

    Wie man eine bestehende Next.js-Anwendung nachträglich mehrsprachig (i18n) macht (i18n-Leitfaden 2026)

    www.youtube.com
    ide.intlayer.org

    Siehe Anwendungsvorlage auf GitHub.

    Inhaltsverzeichnis

    Warum ist es schwierig, eine bestehende Anwendung zu internationalisieren?

    Wenn Sie jemals versucht haben, mehrere Sprachen zu einer App hinzuzufügen, die nur für eine Sprache entwickelt wurde, kennen Sie den Aufwand. Es ist nicht nur „schwierig“ – es ist mühsam. Sie müssen jede einzelne Datei durchkämmen, jede Textzeichenfolge aufspüren und sie in separate Wörterbuchdateien verschieben.

    Dann kommt der riskante Teil: Das Ersetzen all dieses Textes durch Code-Hooks, ohne Ihr Layout oder Ihre Logik zu beeinträchtigen. Es ist die Art von Arbeit, die die Entwicklung neuer Funktionen für Wochen unterbricht und sich wie ein endloses Refactoring anfühlt.

    Was ist der Intlayer Compiler?

    Der Intlayer Compiler wurde entwickelt, um diese manuelle Fleißarbeit zu umgehen. Anstatt Zeichenfolgen manuell zu extrahieren, erledigt der Compiler dies für Sie. Er scannt Ihren Code, findet den Text und verwendet KI, um im Hintergrund die Wörterbücher zu generieren. Anschließend modifiziert er Ihren Code während des Builds, um die erforderlichen i18n-Hooks einzufügen. Im Grunde schreiben Sie Ihre App so weiter, als wäre sie einsprachig, und der Compiler kümmert sich automatisch um die mehrsprachige Transformation.

    Doc Compiler: /de/doc/compiler

    Einschränkungen

    Da der Compiler eine Codeanalyse und -transformation (Einfügen von Hooks und Generieren von Wörterbüchern) zur Kompilierzeit durchführt, kann er den Build-Prozess verlangsamen.

    Um diese Auswirkungen während der Entwicklung zu mildern, können Sie den Compiler im Modus 'build-only' ausführen oder ihn ganz deaktivieren, wenn er nicht benötigt wird.


    Schritt-für-Schritt-Anleitung

    (Optional) Schritt 1 : Inhalt Ihrer Komponenten extrahieren

    Wenn Sie eine bestehende Codebasis haben, kann die Transformation von Tausenden von Dateien zeitaufwendig sein.

    Um diesen Prozess zu erleichtern, bietet Intlayer einen Compiler / Extractor an, um Ihre Komponenten zu transformieren und den Inhalt zu extrahieren.

    Um es einzurichten, können Sie einen compiler-Abschnitt in Ihrer intlayer.config.ts-Datei hinzufügen:

    intlayer.config.ts
    Code kopieren

    Kopieren Sie den Code in die Zwischenablage

    import { type IntlayerConfig } from "intlayer";
    
    const config: IntlayerConfig = {
      // ... Rest Ihrer Konfiguration
      compiler: {
        /**
         * Gibt an, ob der Compiler aktiviert sein soll.
         */
        enabled: true,
    
        /**
         * Definiert den Pfad der Ausgabedateien
         */
        output: ({ fileName, extension }) => `./${fileName}${extension}`,
    
        /**
         * Gibt an, ob die Komponenten nach der Transformation gespeichert werden sollen. Auf diese Weise kann der Compiler nur einmal ausgeführt werden, um die App zu transformieren, und dann entfernt werden.
         */
        saveComponents: false,
    
        /**
         * Präfix für Wörterbuchschlüssel
         */
        dictionaryKeyPrefix: "",
      },
    };
    
    export default config;

    Führen Sie den Extractor aus, um Ihre Komponenten zu transformieren und den Inhalt zu extrahieren

    bash
    Code kopieren

    Kopieren Sie den Code in die Zwischenablage

    npx intlayer extract
    bash
    Code kopieren

    Kopieren Sie den Code in die Zwischenablage

    npm install @intlayer/babel --save-dev
    babel.config.js
    Code kopieren

    Kopieren Sie den Code in die Zwischenablage

    const { intlayerExtractBabelPlugin, getExtractPluginOptions,} = require("@intlayer/babel");module.exports = { presets: ["next/babel"], plugins: [   // Inhalt aus Komponenten in Wörterbücher extrahieren   [intlayerExtractBabelPlugin, getExtractPluginOptions()], ],};
    bash
    Code kopieren

    Kopieren Sie den Code in die Zwischenablage

    npm run build # Oder npm run dev

    zur Einrichtung von Intlayer in einer Next.js-Anwendung

    • IntlayerClientProvider wird verwendet, um die Sprache für Client-Komponenten bereitzustellen.
    • IntlayerServerProvider wird verwendet, um die Sprache für Server-Kinder bereitzustellen.

      Layout and page cannot share a common server context because the server context system is based on a per-request data store (via React's cache mechanism), causing each "context" to be re-created for different segments of the application. Placing the provider in a shared layout would break this isolation, preventing the correct propagation of the server context values to your server components.

    Weiterführende Informationen

    Um noch weiter zu gehen, können Sie den Visual Editor implementieren oder Ihre Inhalte mit dem CMS externalisieren.

    Next.js und Page Router
    Tanstack Start
    Alt+→

    Auf dieser Seite

      Diskussionen sind anonym und werden regelmäßig überprüft, um häufige Probleme zu behandeln. Teilen Sie gerne Feature-Ideen, Feedback zur Dokumentation oder alles rund um Intlayer, wir nutzen diese Eingaben, um unsere Roadmap zu gestalten und das Produkt zu verbessern.

      npx intlayer extract
      npm install @intlayer/babel --save-dev
      const { intlayerExtractBabelPlugin, getExtractPluginOptions,} = require("@intlayer/babel");module.exports = { presets: ["next/babel"], plugins: [   // Inhalt aus Komponenten in Wörterbücher extrahieren   [intlayerExtractBabelPlugin, getExtractPluginOptions()], ],};
      npm run build # Oder npm run dev