Задайте питання та отримайте підсумок документа, вказавши цю сторінку та обраного вами постачальника штучного інтелекту
Історія версій
- "Початкове написання документації для хука `useI18n`"v6.0.029.06.2025
Вміст цієї сторінки перекладено за допомогою штучного інтелекту.
Переглянути останню версію оригінального вмісту англійськоюIf 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
Інтеграція з React: Документація хуку useI18n
Цей розділ містить детальні вказівки щодо використання хука useI18n у React-застосунках для ефективної локалізації контенту.
Імпорт useI18n у React
Хук useI18n можна імпортувати та інтегрувати в React-застосунки залежно від контексту наступним чином:
Клієнтські компоненти:
typescriptКопіювати кодСкопіюйте код у буфер обміну
import { useI18n } from "react-intlayer"; // Використовується в клієнтських React-компонентахСерверні компоненти:
Параметри
Цей хук приймає два параметри:
namespace: Простір імен словника для обмеження області ключів перекладу.locale(необов'язково): Бажана локаль. Якщо не вказано, за замовчуванням буде використано локаль з контексту.
Словник
Усі ключі словника повинні бути оголошені у файлах декларації вмісту, щоб підвищити типобезпеку та запобігти помилкам. Інструкції з конфігурації можна знайти тут.
Приклади використання в React
Приклади використання хуку useI18n у React-компонентах:
Скопіюйте код у буфер обміну
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>
</>
);
};Скопіюйте код у буфер обміну
import type { FC } from "react";
import { useI18n } from "react-intlayer";
const ComponentExample: FC = () => {
const t = useI18n("component-example");
return (
<div>
<h1>{t("title")}</h1> {/* Відобразити заголовок */}
<p>{t("description")}</p> {/* Відобразити опис */}
</div>
);
};Скопіюйте код у буфер обміну
import { useI18n } from "react-intlayer/server";
const ServerComponentExample = () => {
const t = useI18n("server-component");
return (
<div>
<h1>{t("title")}</h1> {/* Відображає заголовок */}
<p>{t("description")}</p> {/* Відображає опис */}
</div>
);
};Обробка атрибутів
При локалізації атрибутів правильно звертайтеся до значень перекладу:
Скопіюйте код у буфер обміну
<!-- Для атрибутів доступності (наприклад, aria-label) використовуйте .value, оскільки потрібні чисті рядки --><button aria-label={t("button.ariaLabel").value}>{t("button.text")}</button>Додаткові ресурси
- Intlayer Visual Editor: Для більш інтуїтивного керування контентом зверніться до документації візуального редактора тут.
У цьому розділі докладно розглядається інтеграція хука useI18n у React-застосунки, що спрощує процес локалізації та забезпечує узгодженість контенту між різними локалями.