Zadaj pytanie i otrzymaj streszczenie dokumentu, odwołując się do tej strony i wybranego dostawcy AI
Ta dokumentacja jest nieaktualna, wersja bazowa została zaktualizowana w 25 czerwca 2026.
Przejdź do angielskiej wersji dokumentuHistoria wersji
- "Inicjalizacja dokumentacji"v8.0.021.01.2026
Treść tej strony została przetłumaczona przy użyciu sztucznej inteligencji.
Zobacz ostatnią wersję oryginalnej treści w języku angielskimIf you have an idea for improving this documentation, please feel free to contribute by submitting a pull request on GitHub.
GitHub link to the documentationCopy doc Markdown to clipboard
Dokumentacja wtyczki Vite intlayer
Wtyczka Vite intlayer integruje konfigurację Intlayer z procesem budowania. Obsługuje aliasy słowników, uruchamia watchera słowników w trybie deweloperskim oraz przygotowuje słowniki do kompilacji.
Użycie
Skopiuj kod do schowka
// vite.config.tsimport { defineConfig } from "vite";import { intlayer } from "vite-intlayer";export default defineConfig({ plugins: [intlayer()],});Opcje
Skopiuj kod do schowka
import type { IntlayerPluginOptions } from "vite-intlayer";IntlayerPluginOptions rozszerza GetConfigurationOptions (zobacz @intlayer/config) o następujące dodatkowe pola:
Otwórz tabelę w oknie modalnym, aby wyraźnie zobaczyć całą zawartość
| Opcja | Typ | Domyślnie | Opis |
|---|---|---|---|
compatCallers | CompatCallerConfig[] | [] | Dodatkowe wzorce callerów dla pakietów compat-adapter (np. @intlayer/react-i18next). Przekazywane do analizatora użycia pól w czasie budowania. |
proxy | { ignore?: (req) => boolean } | undefined | Opcje przekazywane do wbudowanego proxy routingu lokalizacyjnego. Użyj ignore aby wykluczyć określone ścieżki (np. trasy API) z routingu lokalizacyjnego. |
Wszystkie inne opcje (override, configFile, …) są przekazywane bezpośrednio do getConfiguration().
Przykłady
Ignoruj trasy API z routingu locale'a
Skopiuj kod do schowka
// vite.config.tsimport { defineConfig } from "vite";import { intlayer } from "vite-intlayer";export default defineConfig({ plugins: [ intlayer({ proxy: { ignore: (req) => req.url?.startsWith("/api"), }, }), ],});Ze spersonalizowaną ścieżką pliku konfiguracyjnego
Skopiuj kod do schowka
export default defineConfig({ plugins: [ intlayer({ configFile: "./config/intlayer.config.ts", }), ],});Z adapterami kompatybilności
Skopiuj kod do schowka
import { intlayer } from "vite-intlayer";import { reactI18nextCallerConfig } from "@intlayer/react-i18next/plugin";export default defineConfig({ plugins: [ intlayer({ compatCallers: [reactI18nextCallerConfig], }), ],});Co robi wtyczka
1. Przygotowanie słownika
Przed rozpoczęciem buildu (i raz na godzinę w dev), intlayer wywołuje prepareIntlayer aby skompilować wszystkie pliki .content.ts do zoptymalizowanych słowników JSON przechowywanych w .intlayer/.
2. Aliasy modułów
Plugin dodaje aliasy resolve Vite'a, aby import { myDict } from 'intlayer/dictionaries/my-dict' rozwiązywał się do skompilowanego pliku JSON na dysku. Buildy SSR wykorzystują ssr.noExternal, aby zapewnić, że wszystkie pakiety @intlayer/* są spakowane z zastosowanymi aliasami.
3. Dev-server watcher
W trybie development uruchamiany jest watcher chokidar. Gdy plik .content.ts się zmieni, słowniki są rekompilowane, a HMR Vite'a propaguje aktualizację do przeglądarki.
4. Wbudowany proxy do routowania locale (v9+)
Od Intlayer v9 middleware intlayerProxy jest rejestrowany automatycznie wewnątrz intlayer(). Obsługuje:
- Wykrywanie locale z prefiksu URL, cookies i nagłówka
Accept-Language. - Przekierowania 301 gdy wykryte locale nie odpowiada bieżącemu URL.
- Wewnętrzne przepisywanie URL-i tak aby framework widział prawidłowy parametr trasy
[locale].
Proxy jest kontrolowane przez routing.enableProxy (domyślnie true) w konfiguracji Intlayer. Aby całkowicie je wyłączyć:
Skopiuj kod do schowka
// intlayer.config.tsimport { defineConfig } from "intlayer";export default defineConfig({ routing: { enableProxy: false },});Aby dostosować zachowanie proxy bez osobnego wywołania intlayerProxy(), przekaż opcje proxy do głównego pluginu:
Skopiuj kod do schowka
intlayer({ proxy: { ignore: (req) => req.url?.startsWith("/api") } });Zapoznaj się z dokumentacją intlayerProxy aby poznać pełne referencje zachowania routowania.
5. Bundled compiler (v9+)
Gdy compiler.enabled jest true oraz compiler.output jest ustawiony w konfiguracji Intlayer, intlayer() rejestruje intlayerCompiler automatycznie. Compiler wyodrębnia deklaracje treści inline zapisane bezpośrednio w plikach komponentów i zapisuje je do słowników w czasie transformacji. Zobacz dokumentację intlayerCompiler.
6. Optymalizacje budowania
Podczas budowania w trybie produkcji plugin dodaje:
- intlayerOptimize – transformacja Babel, która przepisuje
useIntlayer('key')→useDictionary(hash)i wstrzykuje bezpośrednie importy JSON. - intlayerPrune – usuwa nieużywane pola zawartości z JSON słownika.
- intlayerMinify – kompresuje JSON słownika i opcjonalnie zmienia nazwy pól.
Te funkcje są nieaktywne w trybie rozwojowym.
Przestarzałe aliasy
Otwórz tabelę w oknie modalnym, aby wyraźnie zobaczyć całą zawartość
| Przestarzały eksport | Zamiennik |
|---|---|
intlayerPlugin | intlayer |
intLayerPlugin | intlayer |