Otrzymuj powiadomienia o nadchodzących wydaniach Intlayera
    Data utworzenia:2025-08-23Ostatnia aktualizacja:2025-08-23

    Integracja z React: Dokumentacja hooka useI18n

    Ta sekcja zawiera szczegółowe wskazówki dotyczące używania hooka useI18n w aplikacjach React, umożliwiając efektywną lokalizację treści.

    Importowanie useI18n w React

    Hook useI18n można importować i integrować z aplikacjami React w zależności od kontekstu w następujący sposób:

    • Komponenty klienckie:

      import { useI18n } from "react-intlayer"; // Użycie w komponentach React po stronie klienta
    • Komponenty serwerowe:

    Parametry

    Ten hook przyjmuje dwa parametry:

    1. namespace: Przestrzeń nazw słownika do zakresu kluczy tłumaczeń.
    2. locale (opcjonalny): Żądany język. Jeśli nie zostanie określony, domyślnie zostanie użyty język z kontekstu.

    Słownik

    Wszystkie klucze słownika muszą być zadeklarowane w plikach deklaracji zawartości, aby zwiększyć bezpieczeństwo typów i zapobiec błędom. Instrukcje konfiguracji można znaleźć tutaj.

    Przykłady użycia w React

    Przykłady użycia hooka useI18n w komponentach React:

    src/App.tsx
    import type { FC } from "react";import { ClientComponentExample, ServerComponentExample } from "@components";import { IntlayerProvider } from "react-intlayer";import { useI18n, IntlayerServerProvider } from "react-intlayer/server";import { Locales } from "intlayer";const App: FC<{ locale: Locales }> = ({ locale }) => {  const t = useI18n("home-page", locale);  return (    <>      <p>{t("introduction")}</p>      <IntlayerProvider locale={locale}>        <ClientComponentExample />      </IntlayerProvider>      <IntlayerServerProvider locale={locale}>        <ServerComponentExample />      </IntlayerServerProvider>    </>  );};
    src/components/ServerComponentExample.tsx
    import { useI18n } from "react-intlayer/server";const ServerComponentExample = () => {  const t = useI18n("server-component");  return (    <div>      <h1>{t("title")}</h1> {/* Wyświetl tytuł */}      <p>{t("description")}</p> {/* Wyświetl opis */}    </div>  );};

    Obsługa Atrybutów

    Podczas lokalizacji atrybutów, odpowiednio uzyskuj wartości tłumaczeń:

    <!-- Dla atrybutów dostępności (np. aria-label) używaj .value, ponieważ wymagane są czyste łańcuchy znaków --><button aria-label={t("button.ariaLabel").value}>{t("button.text")}</button>

    Dodatkowe Zasoby

    • Intlayer Visual Editor: Dla bardziej intuicyjnego zarządzania treścią, zapoznaj się z dokumentacją edytora wizualnego tutaj.

    Ta sekcja dotyczy integracji hooka useI18n w aplikacjach React, upraszczając proces lokalizacji i zapewniając spójność treści w różnych lokalizacjach.

    Otrzymuj powiadomienia o nadchodzących wydaniach Intlayera