Zadaj pytanie i otrzymaj streszczenie dokumentu, odwołując się do tej strony i wybranego dostawcy AI
Historia wersji
- "Update Solid useIntlayer API usage to direct property access"v8.9.04.05.2026
- "Update compiler options, add FilePathPattern support"v8.2.09.03.2026
- "Initial release"v8.1.623.02.2026
Treść tej strony została przetłumaczona przy użyciu sztucznej inteligencji.
Zobacz ostatnią wersję oryginalnej treści w języku angielskimJeśli masz pomysł na ulepszenie tej dokumentacji, zachęcamy do przesłania pull requesta na GitHubie.
Link do dokumentacji na GitHubieKopiuj dokument Markdown do schowka
Jak uczynić istniejącą aplikację Vite i React wielojęzyczną (i18n) po fakcie (Przewodnik i18n 2026)
Dodanie internacjonalizacji (i18n) do projektu Vite i React od samego początku jest stosunkowo proste. Ale co zrobić, gdy masz już dojrzałą aplikację wdrożoną w jednym języku i musisz uczynić ją wielojęzyczną po fakcie?
Z tradycyjnymi bibliotekami, takimi jak react-i18next czy react-intl, proces ten bywa koszmarem:
- Ręczne wyszukiwanie zahardkodowanych tekstów w setkach plików JSX i TSX.
- Tworzenie zagnieżdżonych plików JSON i wymyślanie sztucznych kluczy (
components.header.titleitp.). - Zastępowanie tekstów w kodzie skomplikowanymi wywołaniami hooków (
t('...')). - Przebudowa routingu po stronie klienta, zarządzania stanem oraz logiki przełączania języków.
W 2026 roku nie musisz przepisywać bazy kodu. Z Intlayer wdrożysz internacjonalizację w kilka minut dzięki automatycznej ekstrakcji, tłumaczeniom AI i bezproblemowej integracji z Vite.
Szukasz pełnego przewodnika technicznego krok po kroku dla Vite i React? Sprawdź naszą dokumentację: Tłumaczenie Vite i React z Intlayer.
Spis treści
Dylemat retrofittingu: Dlaczego tłumaczenie istniejącej aplikacji bywa trudne
Podczas internacjonalizacji istniejącej aplikacji Vite i React programiści napotykają trzy główne przeszkody:
- Zakłócenie bazy kodu: Ręczne wyciąganie tekstów do słowników JSON wymaga edycji niemal każdego komponentu. Generuje to ogromne diffy w gicie, konflikty scalania i ryzyko regresji wizualnych.
- Narzut związany z kluczami: Wymyślanie kluczy typu
dashboard.hero.ctaButtondla każdego fragmentu tekstu spowalnia pracę i obciąża pamięć przy każdej modyfikacji interfejsu. - Żmudna praca translatorska: Po wyodrębnieniu tekstów ich tłumaczenie na 5, 10 lub 20 języków wiąże się z monotonnym kopiowaniem i wklejaniem lub kosztownymi usługami zewnętrznymi.
Intlayer rozwiązuje te problemy na poziomie architektury za pomocą ekstrakcji wspomaganej kompilatorem, deklaratywnych słowników na poziomie komponentów oraz natywnej integracji z Vite.
Automatyczna ekstrakcja treści (bez ręcznego szukania tekstów)
Zamiast ręcznie wyciągać każdy łańcuch znaków z JSX, Intlayer oferuje dwie wygodne ścieżki:
Opcja A: Ekstraktor CLI (npx intlayer extract)
Możesz uruchomić narzędzie do ekstrakcji Intlayer bezpośrednio w swojej bazie kodu:
Skopiuj kod do schowka
To polecenie analizuje komponenty React, wykrywa teksty widoczne dla użytkownika i automatycznie tworzy pliki deklaracji zawartości (.content.ts) tuż obok poszczególnych komponentów. Logika pozostaje deklaratywna, czytelna i w pełni bezpieczna typologicznie.
Opcja B: Kompilator Intlayer (Ekstrakcja w trakcie budowania)
Gdy kompilator Intlayer jest włączony w konfiguracji, możesz nadal pisać komponenty ze zwykłym tekstem w języku domyślnym. W trakcie budowania kompilator automatycznie ekstrahuje teksty i wstrzykuje zlokalizowaną zawartość:
Skopiuj kod do schowka
W tle Intlayer tworzy słownik i łączy komponent ze zlokalizowaną treścią, całkowicie eliminując etap ręcznego refaktoryzowania.
W tym przypadku wygenerowany zostanie plik deklaracji src/App.content.ts o następującej strukturze:
Skopiuj kod do schowka
Tłumaczenia oparte na sztucznej inteligencji z Twoim ulubionym modelem LLM
Po wyodrębnieniu treści tłumaczenie na dziesiątki języków nie powinno zajmować dni. Intlayer zawiera wbudowane narzędzie CLI do tłumaczeń AI, które łączy się bezpośrednio z OpenAI, Anthropic, DeepSeek lub Mistral przy użyciu Twoich własnych kluczy API:
Skopiuj kod do schowka
Skonfiguruj obsługiwane języki i dostawcę AI w pliku intlayer.config.ts:
Skopiuj kod do schowka
Uruchomienie npx intlayer fill wypełnia pliki deklaracji wysokiej jakości tłumaczeniami dla wszystkich skonfigurowanych języków:
Skopiuj kod do schowka
Ponieważ Intlayer przekazuje applicationContext do modelu językowego, generowane tłumaczenia zachowują kontekst techniczny, ton marki i niuanse gramatyczne znacznie lepiej niż tradycyjne narzędzia.
Aby upewnić się przed wdrożeniem, że żaden tekst nie został pominięty:
Skopiuj kod do schowka
Integracja z Vite i konfiguracja Providera
Integracja Intlayer z Vite sprowadza się do dodania wtyczki w vite.config.ts i otoczenia głównego komponentu za pomocą IntlayerProvider:
Skopiuj kod do schowka
Od wersji Intlayer v9 kompilator jest bezpośrednio zintegrowany z wtyczkąintlayer()i uruchamia się automatycznie po skonfigurowaniucompiler.enabledwintlayer.config.ts.
Otocz aplikację komponentem IntlayerProvider:
Skopiuj kod do schowka
Dynamiczna zmiana języka
Zmieniaj język w dowolnym miejscu aplikacji za pomocą hooka useLocale:
Skopiuj kod do schowka
Wielojęzyczne SEO (Sitemap i Robots.txt)
Intlayer zawiera narzędzia formatujące, takie jak generateSitemap i getMultilingualUrls, które generują pliki sitemap.xml i robots.txt dla statycznych wdrożeń w Vite:
Skopiuj kod do schowka
Dodaj skrypt prebuild w package.json, aby uruchamiał się przed vite build:
Skopiuj kod do schowka
Dowiedz się więcej: Gotowy na pełną konfigurację krok po kroku?
Ten przewodnik przedstawił koncepcyjne podejście do wdrożenia internacjonalizacji w istniejącej aplikacji Vite i React w 2026 roku bez konieczności kosztownego przepisywania kodu.
Jeśli chcesz skonfigurować wszystkie szczegóły (w tym pełne wsparcie TypeScript, dynamiczne słowniki i edytor wizualny), przejdź do naszej kompletnej dokumentacji:
👉 Kompletny przewodnik po tłumaczeniu Vite i React z Intlayer
Często zadawane pytania (FAQ)
Tak. Możesz użyć npx intlayer extract do automatycznego wykrycia i wyodrębnienia tekstów do plików deklaracji, lub użyć kompilatora Intlayer, który przekształca komponenty w trakcie budowania, podczas gdy Ty piszesz standardowy kod JSX.
Intlayer stosuje definicje słowników na poziomie pojedynczych komponentów oraz optymalizację makrami podczas budowania. Paczki otrzymują tylko te teksty, które są faktycznie renderowane na danej stronie, zamiast ładować obszerne pliki JSON. Słowniki dynamiczne pozwalają dodatkowo ładować języki na żądanie.
Tak. CLI Intlayer zawiera polecenie npx intlayer fill, które łączy się z wybranym dostawcą AI (OpenAI, Anthropic, Mistral, DeepSeek), aby automatycznie generować kontekstowe tłumaczenia dla wszystkich skonfigurowanych języków.
Tak. Intlayer zapewnia adaptery zgodności dla react-i18next i react-intl, a także wtyczki synchronizujące istniejące pliki JSON z tłumaczeniami (sync-json).
Komentarze
Nie ma jeszcze komentarzy. Bądź pierwszą osobą, która podzieli się swoimi przemyśleniami.
